Exemplo n.º 1
0
 def test_replacing_configuration_option(self):
     database = sqlite3.connect(":memory:")
     config = ConfigurationDatabase(database, mutable=True)
     config["alice"] = {"abc": 123}
     config["alice"] = {"def": 456}
     self.assertEqual({"alice"}, set(config))
     self.assertEqual({"def": 456}, config["alice"])
Exemplo n.º 2
0
 def test_init(self):
     database = sqlite3.connect(":memory:")
     config = ConfigurationDatabase(database)
     with config.cursor() as cursor:
         # The "configuration" table has been created.
         self.assertEqual(
             cursor.execute("SELECT COUNT(*) FROM sqlite_master"
                            " WHERE type = 'table'"
                            "   AND name = 'configuration'").fetchone(),
             (1, ))
Exemplo n.º 3
0
 def test_mutable(self):
     database = sqlite3.connect(":memory:")
     config = ConfigurationDatabase(database, mutable=True)
     config["alice"] = 1234
     del config["alice"]
Exemplo n.º 4
0
 def test_immutable(self):
     database = sqlite3.connect(":memory:")
     config = ConfigurationDatabase(database, mutable=False)
     self.assertRaises(ConfigurationImmutable, setitem, config, "alice", 1)
     self.assertRaises(ConfigurationImmutable, delitem, config, "alice")
Exemplo n.º 5
0
 def test_as_string(self):
     database = sqlite3.connect(":memory:")
     config = ConfigurationDatabase(database)
     self.assertThat(str(config),
                     Equals("ConfigurationDatabase(main=:memory:)"))
Exemplo n.º 6
0
 def test_removing_configuration_option(self):
     database = sqlite3.connect(":memory:")
     config = ConfigurationDatabase(database, mutable=True)
     config["alice"] = {"abc": 123}
     del config["alice"]
     self.assertEqual(set(), set(config))
Exemplo n.º 7
0
 def test_getting_non_existent_configuration_option(self):
     database = sqlite3.connect(":memory:")
     config = ConfigurationDatabase(database)
     self.assertRaises(KeyError, lambda: config["alice"])
Exemplo n.º 8
0
 def test_getting_configuration_option(self):
     database = sqlite3.connect(":memory:")
     config = ConfigurationDatabase(database, mutable=True)
     config["alice"] = {"abc": 123}
     self.assertEqual({"abc": 123}, config["alice"])
Exemplo n.º 9
0
 def test_configuration_pristine(self):
     # A pristine configuration has no entries.
     database = sqlite3.connect(":memory:")
     config = ConfigurationDatabase(database)
     self.assertSetEqual(set(), set(config))
Exemplo n.º 10
0
 def make_database_store(self):
     database = sqlite3.connect(":memory:")
     self.addCleanup(database.close)
     return ConfigurationDatabase(database, mutable=True)