tests to be refactored later