def setUp(self): unittest.TestCase.setUp(self) server = gnats.Server('somehost') conn = FakeServerConnectionForDB(server) self.db = Database(server, 'testdb', conn) self.db._validate = self.my_validate self.pr_in = '' self.validate_in = ''
def setUp(self): unittest.TestCase.setUp(self) server = gnats.Server('somehost') conn = FakeServerConnectionForDB(server) self.db = Database(server, 'testdb', conn) self.db.validate_field = self.my_validate_field self.fname_in = [] self.pr_in = [] self.check_cr_in = [] self.vf_out = []
def test_03_none(self): """ NO_METADATA """ gnats.metadata_level = gnats.NO_METADATA db = Database(self.server, 'testdb', self.conn) self.assertEqual(db.name, 'testdb') self.assertEqual(db.description, '') self.assertRaises(GnatsException, db.unparse_pr, 1) self.assertRaises(GnatsException, db.build_format, 1) self.assertRaises(GnatsException, db.builtin, 1) self.assertRaises(GnatsException, db.list_fields) self.assertEqual(len(db.initial_entry_fields), 0) self.assertEqual(len(db.fields), 0)
def test_03_minimal(self): """ MINIMAL_METADATA """ gnats.metadata_level = gnats.MINIMAL_METADATA db = Database(self.server, 'testdb', self.conn) self.assertEqual(db.name, 'testdb') self.assertEqual(db.description, '') self.assertEqual(db.builtin('number'), 'number') self.assertEqual(len(db.list_fields()), 8) self.assertEqual(len(db.initial_entry_fields), 0) self.assertEqual(db.fields['synopsis'].lcname, 'synopsis') self.assertEqual(db.fields['synopsis'].description, '') self.assertEqual(len(db.fields['enum-fld'].values), 0)
def test_01_full(self): """ FULL_METADATA """ gnats.metadata_level = gnats.FULL_METADATA db = Database(self.server, 'testdb', self.conn) self.assertEqual(db.name, 'testdb') self.assertEqual(db.description, 'Fake Database') self.assertEqual(len(db.list_fields()), 8) self.assertEqual(len(db.initial_entry_fields), 4) self.assertEqual(db.fields['synopsis'].lcname, 'synopsis') self.assertEqual(db.fields['synopsis'].name, 'Synopsis') self.assertEqual(db.fields['synopsis'].description, 'Synopsis field') self.assertEqual(db.fields['enum-fld'].values[0], 'cat1')
def test_05_refresh_false(self): """ refresh_metadata_automatically honored if False""" gnats.refresh_metadata_automatically = False db = Database(self.server, 'testdb', self.conn) def cb(dbx): cb.dbin = dbx cb.dbin = None db.post_metadata_callback = cb # "Refresh" the conn, so that metadata can run again self.conn = FakeServerConnectionForDB(self.server) db.last_config_time = 987 db.get_handle('user', 'pass', self.conn) self.assertEqual(cb.dbin, None)
def test_02_no_enum(self): """ NO_ENUM_METADATA """ gnats.metadata_level = gnats.NO_ENUM_METADATA db = Database(self.server, 'testdb', self.conn) self.assertEqual(db.name, 'testdb') self.assertEqual(db.description, 'Fake Database') self.assertEqual(len(db.list_fields()), 8) self.assertEqual(db.builtin('number'), 'number') self.assertRaises(GnatsException, db._validate, 1, 1) self.assertRaises(GnatsException, db.validate_field, 1, 1) self.assertEqual(len(db.initial_entry_fields), 4) self.assertEqual(db.fields['synopsis'].lcname, 'synopsis') self.assertEqual(db.fields['synopsis'].name, 'Synopsis') self.assertEqual(db.fields['synopsis'].description, 'Synopsis field') self.assertEqual(len(db.fields['enum-fld'].values), 0) self.assertRaises(GnatsException, db.fields['enum-fld'].list_values)
def get_database(self, dbname, conn=None): """ Get a Database object. If a connection is supplied, it will be used to fetch the db metadata. """ global connection conn = connection if not dbname in self._database_names: self._dbls_time = 0 self.list_databases(conn) if not dbname in self._database_names: raise GnatsException( "Database '%s' not found on server %s:%s" % (dbname, self.host, self.port)) if self._databases.has_key(dbname): return self._databases[dbname] else: db = Database(self, dbname, self.get_connection(conn)) self._databases[dbname] = db return db
def setUp(self): unittest.TestCase.setUp(self) server = gnats.Server('somehost') conn = FakeServerConnectionForDB(server) self.db = Database(server, 'testdb', conn)
def setUp(self): self.server = gnats.Server('somehost') self.conn = FakeServerConnectionForDB(self.server) self.db = Database(self.server, 'testdb', self.conn)
def setUp(self): self.server = gnats.Server('somehost') self.conn = FakeServerConnectionForDB(self.server) self.db = Database(self.server, 'testdb', self.conn) self.tfield = self.db.fields['change-log']
def setUp(self): self.server = gnats.Server('somehost') self.conn = FakeServerConnectionForDB(self.server) self.db = Database(self.server, 'testdb', self.conn) self.enum = self.db.fields['enum-fld'] self.multi = self.db.fields['multienum-fld']