def main(): """Create inventory and copy to test_data.""" def create_inventory(client): """Create inventory from mock data.""" for progress in client.inventory.create(background=False, import_as=''): continue fake_time = importer_test.FAKE_DATETIME _ = mock.patch.object( date_time, 'get_utc_now_datetime', return_value=fake_time).start() # Ensure test data doesn't get deleted mock_unlink = mock.patch.object( os, 'unlink', autospec=True).start() mock_copy_file_from_gcs = mock.patch.object( file_loader, 'copy_file_from_gcs', autospec=True).start() # Mock copy_file_from_gcs to return correct test data file def _copy_file_from_gcs(file_path, *args, **kwargs): """Fake copy_file_from_gcs.""" if 'resource' in file_path: return os.path.join(TEST_RESOURCE_DIR_PATH, 'mock_cai_resources.dump') elif 'iam_policy' in file_path: return os.path.join(TEST_RESOURCE_DIR_PATH, 'mock_cai_iam_policies.dump') mock_copy_file_from_gcs.side_effect = _copy_file_from_gcs engine, tmpfile = create_test_engine_with_file() config = TestServiceConfig(engine) with gcp_api_mocks.mock_gcp(): runner = ApiTestRunner(config, [GrpcInventoryFactory]) runner.run(create_inventory) time.sleep(5) copy_db_file_to_test(tmpfile, 'forseti-test.db') engine, tmpfile = create_test_engine_with_file() config = TestCompositeServiceConfig(engine) with gcp_api_mocks.mock_gcp(): runner = ApiTestRunner(config, [GrpcInventoryFactory]) runner.run(create_inventory) time.sleep(5) copy_db_file_to_test(tmpfile, 'forseti-composite-test.db')
def main(): """Create inventory and copy to test_data.""" def create_inventory(client): """Create inventory from mock data.""" for progress in client.inventory.create(background=False, import_as=''): continue fake_time = importer_test.FAKE_DATETIME _ = mock.patch.object(date_time, 'get_utc_now_datetime', return_value=fake_time).start() # Ensure test data doesn't get deleted mock_unlink = mock.patch.object(os, 'unlink', autospec=True).start() # Mock download to return correct test data file def _fake_download(full_bucket_path, output_file): """Fake copy_file_from_gcs.""" if 'resource' in full_bucket_path: fake_file = os.path.join(TEST_RESOURCE_DIR_PATH, 'mock_cai_resources.dump') elif 'iam_policy' in full_bucket_path: fake_file = os.path.join(TEST_RESOURCE_DIR_PATH, 'mock_cai_iam_policies.dump') with open(fake_file, 'rb') as f: output_file.write(f.read()) engine, tmpfile = create_test_engine_with_file() config = TestServiceConfig(engine) with gcp_api_mocks.mock_gcp() as gcp_mocks: gcp_mocks.mock_storage.download.side_effect = _fake_download runner = ApiTestRunner(config, [GrpcInventoryFactory]) runner.run(create_inventory) engine.dispose() time.sleep(5) copy_db_file_to_test(tmpfile, 'forseti-test.db') engine, tmpfile = create_test_engine_with_file() config = TestCompositeServiceConfig(engine) with gcp_api_mocks.mock_gcp() as gcp_mocks: gcp_mocks.mock_storage.download.side_effect = _fake_download runner = ApiTestRunner(config, [GrpcInventoryFactory]) runner.run(create_inventory) engine.dispose() time.sleep(5) copy_db_file_to_test(tmpfile, 'forseti-composite-test.db')
def setUp(self): """Setup method.""" ForsetiTestCase.setUp(self) self.engine, self.dbfile = create_test_engine_with_file() scanner_dao.ScannerIndex.__table__.create(bind=self.engine) session_maker = sessionmaker() self.session = session_maker(bind=self.engine)
def setUp(self): """Setup method.""" CrawlerBase.setUp(self) self.engine, self.dbfile = create_test_engine_with_file() session_maker = sessionmaker() self.session = session_maker(bind=self.engine) initialize(self.engine) self.inventory_config = InventoryConfig( gcp_api_mocks.ORGANIZATION_ID, '', {}, 0, { 'enabled': True, 'gcs_path': 'gs://test-bucket' }) self.inventory_config.set_service_config(FakeServerConfig(self.engine)) # Ensure test data doesn't get deleted self.mock_unlink = mock.patch.object(os, 'unlink', autospec=True).start() self.mock_copy_file_from_gcs = mock.patch.object( file_loader, 'copy_file_from_gcs', autospec=True).start() self.maxDiff = None # Mock copy_file_from_gcs to return correct test data file def _copy_file_from_gcs(file_path, *args, **kwargs): """Fake copy_file_from_gcs.""" del args, kwargs if 'resource' in file_path: return os.path.join(TEST_RESOURCE_DIR_PATH, 'mock_cai_resources.dump') elif 'iam_policy' in file_path: return os.path.join(TEST_RESOURCE_DIR_PATH, 'mock_cai_iam_policies.dump') self.mock_copy_file_from_gcs.side_effect = _copy_file_from_gcs
def setUp(self): """Setup method.""" unittest_utils.ForsetiTestCase.setUp(self) self.engine, self.dbfile = create_test_engine_with_file() _session_maker = sessionmaker() self.session = _session_maker(bind=self.engine) storage.initialize(self.engine) self.inventory_config = InventoryConfig( 'organizations/987654321', '', {}, 0, { 'enabled': True, 'gcs_path': 'gs://test-bucket' }) # Ensure test data doesn't get deleted self.mock_unlink = mock.patch.object(os, 'unlink', autospec=True).start() self.mock_export_assets = mock.patch.object( cloudasset_api.CloudAssetClient, 'export_assets', autospec=True).start() self.mock_copy_file_from_gcs = mock.patch.object( file_loader, 'copy_file_from_gcs', autospec=True).start() self.mock_auth = mock.patch.object( google.auth, 'default', return_value=(mock.Mock(spec_set=credentials.Credentials), 'test-project')).start()
def setUp(self): """Setup method.""" ForsetiTestCase.setUp(self) self.engine, self.dbfile = create_test_engine_with_file() _session_maker = sessionmaker() self.session = _session_maker(bind=self.engine) initialize(self.engine)
def setUp(self): """Setup method.""" ForsetiTestCase.setUp(self) self.fake_utcnow = datetime(year=1910, month=9, day=8, hour=7, minute=6) self.engine, self.dbfile = create_test_engine_with_file() _session_maker = sessionmaker() self.session = _session_maker(bind=self.engine) initialize(self.engine)
def setUp(self): """Setup method.""" ForsetiTestCase.setUp(self) self.engine, self.dbfile = create_test_engine_with_file() session_maker = sessionmaker() self.session = session_maker(bind=self.engine) storage.initialize(self.engine) scanner_dao.initialize(self.engine) self.session.flush() self.violation_access = scanner_dao.ViolationAccess(self.session) self.inv_index_id1, self.inv_index_id2, self.inv_index_id3 = ( _setup_inv_indices(self.session))
def setUp(self): """Setup method.""" self.engine, self.dbfile = create_test_engine_with_file() ForsetiTestCase.setUp(self)
def setUp(self): self.engine, self.dbfile = create_test_engine_with_file() self.model_manager = ModelManager(self.engine)