def setUp(self): super(DataHandlerTest, self).setUp() database_credentials = TemplateLoader.load_database_credentials() self.expected_admin_credentials = "--user='******' --password='******'" % ( database_credentials.admin_user, database_credentials.admin_password) self.mock_feedback = self.mox.CreateMock(ExecutionFeedback) self.mock_host_controller = self.mox.CreateMock(RemoteHostController) self.mock_host_controller.feedback = self.mock_feedback self.data_handler = DataHandler(database_credentials, self.mock_host_controller)
class DataHandlerTest(mox.MoxTestBase): def setUp(self): super(DataHandlerTest, self).setUp() database_credentials = TemplateLoader.load_database_credentials() self.expected_admin_credentials = "--user='******' --password='******'" % ( database_credentials.admin_user, database_credentials.admin_password) self.mock_feedback = self.mox.CreateMock(ExecutionFeedback) self.mock_host_controller = self.mox.CreateMock(RemoteHostController) self.mock_host_controller.feedback = self.mock_feedback self.data_handler = DataHandler(database_credentials, self.mock_host_controller) def test_can_extract_data_to_specified_data_extract_file(self): """fab.tests.database.mysql.data_handler_test Can extract data to a specified data extract file""" expected_data_extraction_command = 'mysqldump %s some_database > /path/to/data_extract_file.sql' % self.expected_admin_credentials self.mock_feedback.comment( "Extracting data from 'some_database' to /path/to/data_extract_file.sql" ) self._hide_command_execution() self.mock_host_controller.run(expected_data_extraction_command) self.mox.ReplayAll() self.data_handler.extract_data_to('/path/to/data_extract_file.sql', 'some_database') def test_can_load_data_from_specified_data_extract_file(self): """fab.tests.database.mysql.data_handler_test Can load data from a specified data extract file""" expected_data_import_command = 'mysql %s some_database < /path/to/data_extract_file.sql' % self.expected_admin_credentials self.mock_feedback.comment( "Importing data from /path/to/data_extract_file.sql into 'some_database'" ) self._hide_command_execution() self.mock_host_controller.run(expected_data_import_command) self.mox.ReplayAll() self.data_handler.load_data_from('/path/to/data_extract_file.sql', 'some_database') def _hide_command_execution(self): self.mock_host_controller.hide_command().AndReturn( fabric.api.hide('running'))
def setUp(self): super(DataHandlerTest, self).setUp() database_credentials = TemplateLoader.load_database_credentials() self.expected_admin_credentials = "--user='******' --password='******'" % (database_credentials.admin_user, database_credentials.admin_password) self.mock_feedback = self.mox.CreateMock(ExecutionFeedback) self.mock_host_controller = self.mox.CreateMock(RemoteHostController) self.mock_host_controller.feedback = self.mock_feedback self.data_handler = DataHandler(database_credentials, self.mock_host_controller)
def create_with(database_credentials, deployment_host_config, host_controller): data_populator_config = RSRDataPopulatorConfig.create_with( deployment_host_config) django_admin = DjangoAdmin.create_with( data_populator_config.rsr_env_path, data_populator_config.rsr_deployment_home, host_controller) return RSRDataPopulator( data_populator_config, FileSystem(host_controller), LocalFileSystem(), django_admin, DataHandler(database_credentials, host_controller), host_controller.feedback)
class DataHandlerTest(mox.MoxTestBase): def setUp(self): super(DataHandlerTest, self).setUp() database_credentials = TemplateLoader.load_database_credentials() self.expected_admin_credentials = "--user='******' --password='******'" % (database_credentials.admin_user, database_credentials.admin_password) self.mock_feedback = self.mox.CreateMock(ExecutionFeedback) self.mock_host_controller = self.mox.CreateMock(RemoteHostController) self.mock_host_controller.feedback = self.mock_feedback self.data_handler = DataHandler(database_credentials, self.mock_host_controller) def test_can_extract_data_to_specified_data_extract_file(self): """fab.tests.database.mysql.data_handler_test Can extract data to a specified data extract file""" expected_data_extraction_command = 'mysqldump %s some_database > /path/to/data_extract_file.sql' % self.expected_admin_credentials self.mock_feedback.comment("Extracting data from 'some_database' to /path/to/data_extract_file.sql") self._hide_command_execution() self.mock_host_controller.run(expected_data_extraction_command) self.mox.ReplayAll() self.data_handler.extract_data_to('/path/to/data_extract_file.sql', 'some_database') def test_can_load_data_from_specified_data_extract_file(self): """fab.tests.database.mysql.data_handler_test Can load data from a specified data extract file""" expected_data_import_command = 'mysql %s some_database < /path/to/data_extract_file.sql' % self.expected_admin_credentials self.mock_feedback.comment("Importing data from /path/to/data_extract_file.sql into 'some_database'") self._hide_command_execution() self.mock_host_controller.run(expected_data_import_command) self.mox.ReplayAll() self.data_handler.load_data_from('/path/to/data_extract_file.sql', 'some_database') def _hide_command_execution(self): self.mock_host_controller.hide_command().AndReturn(fabric.api.hide('running'))
def create_with(database_credentials, host_controller): data_retriever_config = RSRDataRetrieverConfig(DataHostPaths()) host_file_system = FileSystem(host_controller) settings_reader = DjangoSettingsReader.create_with(data_retriever_config.rsr_log_file_path, data_retriever_config.rsr_env_path, data_retriever_config.rsr_app_path, host_controller) return RSRDataRetriever(data_retriever_config, host_file_system, LocalFileSystem(), settings_reader, DataHandler(database_credentials, host_controller), host_controller.feedback, TimeStampFormatter())