def testSetErrhandler(self): global error_count upscaledb.set_error_handler(my_error_handler) error_count = 0 try: upscaledb.env().open("asxxxldjf") except upscaledb.error, (errno, strerror): assert upscaledb.UPS_FILE_NOT_FOUND == errno
def testGetDatabaseNames(self): env = upscaledb.env() env.create("test.db") n = env.get_database_names() assert n == () db = env.create_db(1) db.close() n = env.get_database_names() assert n == (1, ) db = env.create_db(2) db.close() n = env.get_database_names() assert n == ( 1, 2, ) db = env.create_db(3) db.close() n = env.get_database_names() assert n == ( 1, 2, 3, ) env.close()
def testEraseDbNegative(self): env = upscaledb.env() env.create("test.db") try: env.erase_db(1) except upscaledb.error, (errno, message): assert upscaledb.UPS_DATABASE_NOT_FOUND == errno
def testBeginAbort(self): env = upscaledb.env() env.create("test.db", upscaledb.UPS_ENABLE_TRANSACTIONS) db = env.create_db(1) txn = upscaledb.txn(env) txn.abort() db.close()
def testCreateDbNegative(self): env = upscaledb.env() env.create("test.db") try: db = env.create_db(0) db.close() except upscaledb.error, (errno, message): assert upscaledb.UPS_INV_PARAMETER == errno
def testInsertRecno(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1, upscaledb.UPS_RECORD_NUMBER32) db.insert(None, "key1", "value") db.insert(None, 5, "value") db.insert(None, None, "value") db.close()
def testGetDatabaseNamesNegative(self): env = upscaledb.env() env.create("test.db") try: n = env.get_database_names(4) except TypeError: pass env.close()
def testCreateInMemory(self): self.remove_file("test.db") env = upscaledb.env() env.create("", upscaledb.UPS_IN_MEMORY) env.close() env.create(None, upscaledb.UPS_IN_MEMORY) env.close() assert(os.path.isfile("test.db") == False)
def testSetCompareFuncNegative(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) try: db.set_compare_func(self.callbackCompare1) except upscaledb.error, (errno, strerror): assert upscaledb.UPS_INV_PARAMETER == errno
def testEraseNegative(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) try: db.find(None, "key1") except upscaledb.error, (errno, strerror): assert upscaledb.UPS_KEY_NOT_FOUND == errno
def testCreateInMemory(self): self.remove_file("test.db") env = upscaledb.env() env.create("", upscaledb.UPS_IN_MEMORY) env.close() env.create(None, upscaledb.UPS_IN_MEMORY) env.close() assert (os.path.isfile("test.db") == False)
def testInsertNegative(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) db.insert(None, "key1", "value") try: db.insert(None, "key1", "value") except upscaledb.error, (errno, strerror): assert upscaledb.UPS_DUPLICATE_KEY == errno
def testFind(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) db.insert(None, "key1", "value1") db.insert(None, "key2", "value2", 0) assert "value1" == db.find(None, "key1") assert "value2" == db.find(None, "key2") db.close()
def testGetRecordNegative(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) c = upscaledb.cursor(db) try: c.get_record() except upscaledb.error, (errno, string): assert upscaledb.UPS_CURSOR_IS_NIL == errno
def testOpenExtended(self): env = upscaledb.env() # TODO if i remove (0,0), a TypeError exception is thrown try: env.open("test.db", 0, \ ((upscaledb.UPS_PARAM_CACHESIZE, 20), (0, 0))) env.close() except upscaledb.error, (errno, strerror): assert upscaledb.UPS_FILE_NOT_FOUND == errno
def testGetDuplicateCountNegative(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1, upscaledb.UPS_ENABLE_DUPLICATE_KEYS) c = upscaledb.cursor(db) try: c.get_duplicate_count() except upscaledb.error, (errno, string): assert upscaledb.UPS_CURSOR_IS_NIL == errno
def testGetOverwrite(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) c = upscaledb.cursor(db) try: c.overwrite("asdf") except upscaledb.error, (errno, string): assert upscaledb.UPS_CURSOR_IS_NIL == errno
def testOpenDbNegative(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) db.close() try: db = env.open_db(5) except upscaledb.error, (errno, message): assert upscaledb.UPS_DATABASE_NOT_FOUND == errno
def testClone(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) c = upscaledb.cursor(db) clone = c.clone() c.close() clone.close() db.close()
def testRenameDb(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) db.close() env.rename_db(1, 2) db = env.open_db(2) db.close() env.close()
def testInsert(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1, upscaledb.UPS_ENABLE_DUPLICATE_KEYS) db.insert(None, "key1", "value") db.insert(None, "key2", "value", 0) db.insert(None, "key1", "value", upscaledb.UPS_OVERWRITE) db.insert(None, "key1", "value", upscaledb.UPS_DUPLICATE) db.close() env.close()
def testCreateNegative(self): env = upscaledb.env() try: env.create("test.db", 0, 0644, "asdf") except TypeError: pass try: env.create("test.db", 9999) except upscaledb.error, (errno, strerror): assert upscaledb.UPS_INV_PARAMETER == errno
def testOpenNegative(self): self.remove_file("test.db") env = upscaledb.env() try: env.open("test.db", 0, "asdf") except TypeError: pass try: env.open("test.db", upscaledb.UPS_IN_MEMORY) except upscaledb.error, (errno, strerror): assert upscaledb.UPS_INV_PARAMETER == errno
def testCreate(self): env = upscaledb.env() self.remove_file("test.db") env.create("test.db") env.close() assert (os.path.isfile("test.db")) env.create("test.db", 0) env.close() env.create("test.db", 0, 0644) env.close() assert (os.path.isfile("test.db"))
def testCreate(self): env = upscaledb.env() self.remove_file("test.db") env.create("test.db") env.close() assert(os.path.isfile("test.db")) env.create("test.db", 0) env.close() env.create("test.db", 0, 0644) env.close() assert(os.path.isfile("test.db"))
def testCreateDbParam(self): env = upscaledb.env() env.create("test.db") db = env.create_db(3, upscaledb.UPS_RECORD_NUMBER64) db.close() db = env.open_db(3) db.close() db = env.create_db(4, 0, ((upscaledb.UPS_PARAM_KEYSIZE, 20), (0,0))) db.close() db = env.open_db(4) db.close() env.close()
def testCloneNegative(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) c = upscaledb.cursor(db) try: clone = c.clone(13) except TypeError: pass c.close() db.close() env.close()
def testFindNegative(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) db.insert(None, "key1", "value1") db.insert(None, "key2", "value2") db.insert(None, "key3", "value3") c = upscaledb.cursor(db) try: c.find("key4") except upscaledb.error, (errno, string): assert upscaledb.UPS_KEY_NOT_FOUND == errno
def testCreateDbParam(self): env = upscaledb.env() env.create("test.db") db = env.create_db(3, upscaledb.UPS_RECORD_NUMBER64) db.close() db = env.open_db(3) db.close() db = env.create_db(4, 0, ((upscaledb.UPS_PARAM_KEYSIZE, 20), (0, 0))) db.close() db = env.open_db(4) db.close() env.close()
def testSum(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) db.insert(None, "1", "value") db.insert(None, "2", "value") db.insert(None, "3", "value") result = env.select("COUNT($key) FROM DATABASE 1") assert result.get_row_count() == 1 # this is a 64bit integer with the value "3" in little endian assert result.get_record(0) == "\3\0\0\0\0\0\0\0" db.close() env.close()
def testErase(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) c = upscaledb.cursor(db) c.insert("key1", "value1") assert "key1" == c.get_key() assert "value1" == c.get_record() c.erase() try: c.find("key1") except upscaledb.error, (errno, string): assert upscaledb.UPS_KEY_NOT_FOUND == errno
def testSetCompareFuncExcept(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1, 0, \ ((upscaledb.UPS_PARAM_KEY_TYPE, upscaledb.UPS_TYPE_CUSTOM), (0, 0))) db.set_compare_func(self.callbackCompare2) try: db.insert(None, "1", "value") db.insert(None, "2", "value") except ZeroDivisionError: pass db.close()
def testBeginCommit(self): env = upscaledb.env() env.create("test.db", upscaledb.UPS_ENABLE_TRANSACTIONS) db = env.create_db(1) txn = upscaledb.txn(env) db.insert(txn, "key1", "value1") db.insert(txn, "key2", "value2") db.insert(txn, "key3", "value3") db.erase(txn, "key1") db.erase(txn, "key2") try: db.find(txn, "key1") except upscaledb.error, (errno, strerror): assert upscaledb.UPS_KEY_NOT_FOUND == errno
def testMoveTo(self): env = upscaledb.env() env.create("test.db") db = env.create_db(1) db.insert(None, "key1", "value1") db.insert(None, "key2", "value2") db.insert(None, "key3", "value3") c = upscaledb.cursor(db) c.move_to(upscaledb.UPS_CURSOR_FIRST) c.move_to(upscaledb.UPS_CURSOR_NEXT) c.move_to(upscaledb.UPS_CURSOR_LAST) c.close() db.close() env.close()