def test_save_mongo_configs(self): """Test save_mongo_configs function.""" fake_mongo_data = { 'name': 'config.conf', 'path': '/path/to/config.conf', 'owner': 'somebody', 'group': 'somepeople', 'mode': '0664'} fake_config_name = 'config.conf' fake_meta_data = { 'path': '/path/to/config.conf', 'owner': 'somebody', 'group': 'somepeople', 'mode': '0664'} fake_db = self.mox.CreateMockAnything() fake_col = self.mox.CreateMockAnything() fake_col.find_one({'name': fake_config_name}).AndReturn( fake_mongo_data) # Just update with the same information. fake_col.update({'name': fake_config_name}, { '$set':{'contents': '', 'path': '/path/to/config.conf', 'owner': 'somebody', 'group': 'somepeople', 'mode': '0664'}}).AndReturn(12) fake_db.test = fake_col self.mox.ReplayAll() self.assertEqual(12, aerostat_server.save_mongo_configs( fake_db, 'test', fake_config_name, '', fake_meta_data))
def test_do_config_update(self): """Test do_config_update function.""" aerostat_server.CONFIG_REPO_PATH = fake_global = '/path/to/repo/' fake_db = self.mox.CreateMockAnything() fake_repo_path = 'test/config.conf' fake_repo_url = 'ssh://server/repo' fake_repo = self.mox.CreateMockAnything() fake_repo_files = 'test/config.conf' fake_git = self.mox.CreateMockAnything() fake_repo.git = fake_git fake_git.ls_files().AndReturn(fake_repo_files) fake_meta_data = { 'path': '/path/to/config.conf', 'owner': 'somebody', 'group': 'somepeople', 'mode': '0664'} fake_col_name = 'test' fake_file_name = 'config.conf' self.mox.StubOutWithMock(aerostat_server, 'update_or_clone_repo') aerostat_server.update_or_clone_repo( fake_global, fake_repo_url).AndReturn(fake_repo) self.mox.StubOutWithMock(aerostat_server, 'parse_config_data') aerostat_server.parse_config_data('test/config.conf').AndReturn(( fake_col_name, fake_file_name, '', fake_meta_data)) self.mox.StubOutWithMock(aerostat_server, 'save_mongo_configs') aerostat_server.save_mongo_configs(fake_db, fake_col_name, fake_file_name, '', fake_meta_data).AndReturn(12) self.mox.ReplayAll() self.assertTrue(aerostat_server.do_config_update( fake_db, fake_global, fake_repo_url))