Esempio n. 1
0
 def test_puts_overwriting_existing_value(self):
     db = Database(self.engine, self.config)
     db.put(r"key1", r"value1")
     self.assertEqual(db.get_string(r"key1"), r"value1")
     db.put(r"key1", r"value123")
     self.assertEqual(db.get_string(r"key1"), r"value123")
     db.put(r"key1", r"asdf")
     self.assertEqual(db.get_string(r"key1"), r"asdf")
     db.stop()
Esempio n. 2
0
 def test_puts_empty_values(self):
     db = Database(self.engine, self.config)
     db.put(r"empty", r"")
     db.put(r"single-space", r" ")
     db.put(r"two-tab", r"\t\t")
     self.assertEqual(db.get_string(r"empty"), r"")
     self.assertEqual(db.get_string(r"single-space"), r" ")
     self.assertEqual(db.get_string(r"two-tab"), r"\t\t")
     db.stop()
Esempio n. 3
0
 def test_removes_key_and_value(self):
     db = Database(self.engine, self.config)
     db.put(r"key1", r"value1")
     self.assertTrue(db.exists(r"key1"))
     self.assertEqual(db.get_string(r"key1"), r"value1")
     self.assertTrue(db.remove(r"key1"))
     self.assertFalse(db.remove(r"key1"))
     self.assertFalse(db.exists(r"key1"))
     with self.assertRaises(KeyError):
         db.get_string(r"key1")
     db.stop()
Esempio n. 4
0
 def test_puts_multiple_values(self):
     db = Database(self.engine, self.config)
     db.put(r"key1", r"value1")
     db.put(r"key2", r"value2")
     db.put(r"key3", r"value3")
     self.assertTrue(db.exists(r"key1"))
     self.assertEqual(db.get_string(r"key1"), r"value1")
     self.assertTrue(db.exists(r"key2"))
     self.assertEqual(db.get_string(r"key2"), r"value2")
     self.assertTrue(db.exists(r"key3"))
     self.assertEqual(db.get_string(r"key3"), r"value3")
     db.stop()
Esempio n. 5
0
 def test_puts_empty_key(self):
     db = Database(self.engine, self.config)
     db.put(r"", r"empty")
     db.put(r" ", r"single-space")
     db.put(r"\t\t", r"two-tab")
     self.assertTrue(db.exists(r""))
     self.assertEqual(db.get_string(r""), r"empty")
     self.assertTrue(db.exists(r" "))
     self.assertEqual(db.get_string(r" "), r"single-space")
     self.assertTrue(db.exists(r"\t\t"))
     self.assertEqual(db.get_string(r"\t\t"), r"two-tab")
     db.stop()
Esempio n. 6
0
 def test_puts_utf8_key(self):
     db = Database(self.engine, self.config)
     val = r"to remember, note, record"
     db.put(r"记", val)
     self.assertTrue(db.exists(r"记"))
     self.assertEqual(db.get_string(r"记"), val)
     db.stop()
Esempio n. 7
0
 def test_puts_basic_values(self):
     db = Database(self.engine, self.config)
     self.assertFalse(db.exists(r"key1"))
     db.put(r"key1", r"value1")
     self.assertTrue(db.exists(r"key1"))
     self.assertEqual(db.get_string(r"key1"), r"value1")
     db.stop()
Esempio n. 8
0
 def test_blackhole_engine(self):
     db = Database(r"blackhole", self.config)
     self.assertEqual(db.count_all(), 0)
     self.assertFalse(db.exists(r"key1"))
     with self.assertRaises(KeyError):
         db.get_string(r"key1")
     db.put(r"key1", r"value123")
     self.assertEqual(db.count_all(), 0)
     self.assertFalse(db.exists(r"key1"))
     with self.assertRaises(KeyError):
         db.get_string(r"key1")
     self.assertTrue(db.remove(r"key1"))
     self.assertFalse(db.exists(r"key1"))
     with self.assertRaises(KeyError):
         db.get_string(r"key1")
     db.stop()
Esempio n. 9
0
 def test_gets_missing_key(self):
     db = Database(self.engine, self.config)
     self.assertFalse(db.exists(r"key1"))
     with self.assertRaises(KeyError):
         db.get_string(r"key1")
     db.stop()
Esempio n. 10
0
 def test_puts_utf8_value(self):
     db = Database(self.engine, self.config)
     val = r"记 means to remember, note, record"
     db.put(r"key1", val)
     self.assertEqual(db.get_string(r"key1"), val)
     db.stop()
Esempio n. 11
0
 def test_puts_complex_value(self):
     db = Database(self.engine, self.config)
     val = r"one\ttwo or <p>three</p>\n {four}   and ^five"
     db.put(r"key1", val)
     self.assertEqual(db.get_string(r"key1"), val)
     db.stop()
Esempio n. 12
0
 def test_puts_binary_values(self):
     db = Database(self.engine, self.config)
     db.put(r"key1", "A\0B\0\0C")
     self.assertEqual(db.get_string(r"key1"), "A\0B\0\0C")
     db.stop()
Esempio n. 13
0
 def test_puts_binary_keys(self):
     db = Database(self.engine, self.config)
     db.put("A\0B\0\0C", r"value1")
     self.assertTrue(db.exists("A\0B\0\0C"))
     self.assertEqual(db.get_string("A\0B\0\0C"), r"value1")
     db.stop()