def InitDatastore(self): if self.disabled: raise unittest.SkipTest( "Skipping since Mysql db is not reachable.") self.token = access_control.ACLToken(username="******", reason="Running tests") # Use separate tables for benchmarks / tests so they can be run in parallel. with test_lib.ConfigOverrider({ "Mysql.database_name": "grr_test_%s" % self.__class__.__name__, "Mysql.max_connect_wait": 2 }): try: data_store.DB = mysql_advanced_data_store.MySQLAdvancedDataStore( ) data_store.DB.Initialize() data_store.DB.flusher_thread.Stop() data_store.DB.security_manager = test_lib.MockSecurityManager() data_store.DB.RecreateTables() except Exception as e: logging.debug("Error while connecting to MySQL db: %s.", e) MysqlAdvancedTestMixin.disabled = True raise unittest.SkipTest( "Skipping since Mysql db is not reachable.")
def InitDatastore(self): self.token = access_control.ACLToken(username="******", reason="Running tests") config_lib.CONFIG.Set("Datastore.location", "%s/tdb_test/" % self.temp_dir) self.DestroyDatastore() data_store.DB = tdb_data_store.TDBDataStore() data_store.DB.security_manager = test_lib.MockSecurityManager()
def InitDatastore(self): """Initializes the data store.""" self.token = access_control.ACLToken(username="******", reason="Running tests") config_lib.CONFIG.Set("Mongo.db_name", "grr_test_%s" % self.__class__.__name__) data_store.DB = mongo_data_store.MongoDataStore() data_store.DB.security_manager = test_lib.MockSecurityManager() self.DestroyDatastore()
def _InstallACLChecks(self, forbidden_access): if self.old_security_managers: raise RuntimeError( "Seems like _InstallACLChecks was called twice in one " "test") # HTTP_DB doesn't get recreated every time this test runs. So make sure # that we can restore previous security manager later. self.old_security_managers = [ HTTP_DB[0].security_manager, HTTP_DB[1].security_manager ] # We have to install tuned MockSecurityManager not on data_store.DB, which # is a HttpDataStore, but on HTTP_DB which is an SqliteDataStore that # eventuall gets queries from HttpDataStore. HTTP_DB[0].security_manager = test_lib.MockSecurityManager( forbidden_datastore_access=forbidden_access) HTTP_DB[1].security_manager = test_lib.MockSecurityManager( forbidden_datastore_access=forbidden_access)
def Run(self): """Run the hook setting up fixture and security mananger.""" # Install the mock security manager so we can trap errors in interactive # mode. data_store.DB.security_manager = test_lib.MockSecurityManager() self.token = access_control.ACLToken(username="******", reason="Make fixtures.") self.token = self.token.SetUID() self.BuildFixture()
def setUp(self): super(MongoDataStoreV1Test, self).setUp() self.token = access_control.ACLToken(username="******", reason="Running tests") data_store.DB = mongo_data_store_old.MongoDataStoreV1() data_store.DB.security_manager = test_lib.MockSecurityManager() # Drop the collection. data_store.DB.db_handle.drop_collection(data_store.DB.collection)
def InitTable(self): self.token = access_control.ACLToken(username="******", reason="Running tests") # Use separate tables for benchmarks / tests so they can be run in parallel. config_lib.CONFIG.Set("Mysql.database_name", "grr_test_%s" % self.__class__.__name__) config_lib.CONFIG.Set("Mysql.table_name", "aff4_test") data_store.DB = mysql_data_store.MySQLDataStore() data_store.DB.security_manager = test_lib.MockSecurityManager() data_store.DB.RecreateDataBase()
def InitDatastore(self): self.token = access_control.ACLToken(username="******", reason="Running tests") self.root_path = utils.SmartStr("%s/sqlite_test/" % self.temp_dir) config_lib.CONFIG.Set("Datastore.location", self.root_path) self.DestroyDatastore() data_store.DB = sqlite_data_store.SqliteDataStore() data_store.DB.security_manager = test_lib.MockSecurityManager()
def Run(self): """Run the hook setting up fixture and security mananger.""" # Install the mock security manager so we can trap errors in interactive # mode. data_store.DB.security_manager = test_lib.MockSecurityManager() self.token = access_control.ACLToken(username="******", reason="Make fixtures.") self.token = self.token.SetUID() if data_store.DB.__class__.__name__ == "FakeDataStore": self.RestoreFixtureFromCache() else: self.BuildFixture()
def _MakeFixtures(self): # Install the mock security manager so we can trap errors in interactive # mode. data_store.DB.security_manager = test_lib.MockSecurityManager() token = access_control.ACLToken(username="******", reason="Make fixtures.") token = token.SetUID() for i in range(10): client_id = rdf_client.ClientURN("C.%016X" % i) with aff4.FACTORY.Create( client_id, aff4_grr.VFSGRRClient, mode="rw", token=token) as client_obj: index = client_index.CreateClientIndex(token=token) index.AddClient(client_obj)
def InitTable(self): """Initializes the data store.""" self.token = access_control.ACLToken(username="******", reason="Running tests") config_lib.CONFIG.Set("Mongo.db_name", "grr_test_%s" % self.__class__.__name__) data_store.DB = mongo_data_store.MongoDataStore() data_store.DB.security_manager = test_lib.MockSecurityManager() # Drop the collection. data_store.DB.db_handle.drop_collection( data_store.DB.latest_collection) data_store.DB.db_handle.drop_collection( data_store.DB.versioned_collection)
def InitDatastore(self): self.token = access_control.ACLToken(username="******", reason="Running tests") # Use separate tables for benchmarks / tests so they can be run in parallel. config_lib.CONFIG.Set("Mysql.database_name", "grr_test_%s" % self.__class__.__name__) try: data_store.DB = mysql_advanced_data_store.MySQLAdvancedDataStore() data_store.DB.security_manager = test_lib.MockSecurityManager() data_store.DB.RecreateTables() except Exception as e: logging.debug("Error while connecting to MySQL db: %s.", e) raise unittest.SkipTest("Skipping since Mysql db is not reachable.")
def InitDatastore(self): self.token = access_control.ACLToken(username="******", reason="Running tests") # Use separate tables for benchmarks / tests so they can be run in parallel. with test_lib.ConfigOverrider({ "Mysql.database_name": "grr_test_%s" % self.__class__.__name__, "Mysql.table_name": "aff4_test"}): try: data_store.DB = mysql_data_store.MySQLDataStore() data_store.DB.flusher_thread.Stop() data_store.DB.security_manager = test_lib.MockSecurityManager() data_store.DB.RecreateDataBase() except Exception as e: logging.debug("Error while connecting to MySQL db: %s.", e) raise unittest.SkipTest("Skipping since Mysql db is not reachable.")