def test_db_version(self, mock_get_engine, mock_db_version,
                     mock_find_repo):
     database = 'fake'
     mock_get_engine.return_value = 'engine'
     migration.db_version(database)
     mock_find_repo.assert_called_once_with(database)
     mock_db_version.assert_called_once_with('engine', 'repo')
 def test_not_controlled(self, mock_get_engine, mock_db_version, mock_find_repo):
     database = "api"
     mock_get_engine.side_effect = ["engine", "engine", "engine"]
     exc = versioning_exceptions.DatabaseNotControlledError()
     mock_db_version.side_effect = [exc, ""]
     metadata = mock.MagicMock()
     metadata.tables.return_value = []
     with mock.patch.object(sqlalchemy, "MetaData", metadata), mock.patch.object(
         migration, "db_version_control"
     ) as mock_version_control:
         migration.db_version(database)
         mock_version_control.assert_called_once_with(0, database)
         db_version_calls = [mock.call("engine", "repo")] * 2
         self.assertEqual(db_version_calls, mock_db_version.call_args_list)
     engine_calls = [mock.call(database)] * 3
     self.assertEqual(engine_calls, mock_get_engine.call_args_list)
 def test_not_controlled(self, mock_get_engine, mock_db_version,
                         mock_find_repo):
     database = 'api'
     mock_get_engine.side_effect = ['engine', 'engine', 'engine']
     exc = versioning_exceptions.DatabaseNotControlledError()
     mock_db_version.side_effect = [exc, '']
     metadata = mock.MagicMock()
     metadata.tables.return_value = []
     with mock.patch.object(
             sqlalchemy, 'MetaData', metadata), mock.patch.object(
                 migration, 'db_version_control') as mock_version_control:
         migration.db_version(database)
         mock_version_control.assert_called_once_with(0, database)
         db_version_calls = [mock.call('engine', 'repo')] * 2
         self.assertEqual(db_version_calls, mock_db_version.call_args_list)
     engine_calls = [mock.call(database)] * 3
     self.assertEqual(engine_calls, mock_get_engine.call_args_list)
 def test_db_version(self, mock_get_engine, mock_db_version, mock_find_repo):
     database = "fake"
     mock_get_engine.return_value = "engine"
     migration.db_version(database)
     mock_find_repo.assert_called_once_with(database)
     mock_db_version.assert_called_once_with("engine", "repo")