Esempio n. 1
0
 def test_get_with_fields(self):
     """Get data and filter in some fields."""
     z = ZkFarmer(self.client)
     self.client.ensure_path("/something/mysql2")
     self.client.set("/something/mysql2",
                     json.dumps(dict(enabled="1", maintainance="0", weight="10")))
     self.assertEqual(z.get("/something/mysql2", ["enabled"]),
                      {"enabled": "1"})
     self.assertEqual(z.get("/something/mysql2", ["enabled", "maintainance"]),
                      {"enabled": "1", "maintainance": "0"})
     self.assertEqual(z.get("/something/mysql2", ["disabled", "maintainance"]),
                      {"disabled": None, "maintainance": "0"})
Esempio n. 2
0
 def test_get(self):
     """Get data from a regular node."""
     z = ZkFarmer(self.client)
     self.client.ensure_path("/something/here")
     self.client.set("/something/here", json.dumps({1:"2", 3:"4"}))
     self.assertEqual(z.get("/something/here"),
                      {"1": "2", "3": "4"})
Esempio n. 3
0
 def test_get_with_children(self):
     """Get data from a regular node with children."""
     z = ZkFarmer(self.client)
     self.client.ensure_path("/something/here")
     self.client.ensure_path("/something/not")
     self.client.set("/something", json.dumps({1: "2", 3: "4"}))
     self.assertEqual(z.get("/something"), {"1": "2", "3": "4"})
Esempio n. 4
0
 def test_get_with_fields(self):
     """Get data and filter in some fields."""
     z = ZkFarmer(self.client)
     self.client.ensure_path("/something/mysql2")
     self.client.set(
         "/something/mysql2",
         json.dumps(dict(enabled="1", maintainance="0", weight="10")))
     self.assertEqual(z.get("/something/mysql2", ["enabled"]),
                      {"enabled": "1"})
     self.assertEqual(
         z.get("/something/mysql2", ["enabled", "maintainance"]), {
             "enabled": "1",
             "maintainance": "0"
         })
     self.assertEqual(
         z.get("/something/mysql2", ["disabled", "maintainance"]), {
             "disabled": None,
             "maintainance": "0"
         })
Esempio n. 5
0
 def test_set(self):
     """Set some value."""
     z = ZkFarmer(self.client)
     self.client.ensure_path("/something")
     z.set("/something", "enabled", "1")
     z.set("/something", "maintainance", "0")
     z.set("/something", "weight", "10")
     self.assertEqual(z.get("/something"),
                      dict(enabled="1", maintainance="0", weight="10"))
     self.assertEqual(json.loads(self.client.get("/something")[0]),
                      dict(enabled="1", maintainance="0", weight="10"))
Esempio n. 6
0
 def test_set(self):
     """Set some value."""
     z = ZkFarmer(self.client)
     self.client.ensure_path("/something")
     z.set("/something", "enabled", "1")
     z.set("/something", "maintainance", "0")
     z.set("/something", "weight", "10")
     self.assertEqual(z.get("/something"),
                      dict(enabled="1", maintainance="0", weight="10"))
     self.assertEqual(json.loads(self.client.get("/something")[0]),
                      dict(enabled="1", maintainance="0", weight="10"))
Esempio n. 7
0
 def test_set_bad_version(self):
     """Set some value with a concurrent update."""
     z = ZkFarmer(self.client)
     self.client.ensure_path("/something")
     orig = self.client.retry
     # Simulate a BadVersionError
     with patch.object(self.client, 'retry') as mock:
         def fail_once(*args, **kwargs):
             mock.side_effect = orig
             raise BadVersionError("Baaaad")
         mock.side_effect = fail_once
         z.set("/something", "enabled", "1")
         z.set("/something", "maintainance", "0")
         z.set("/something", "weight", "10")
     self.assertEqual(z.get("/something"),
                      dict(enabled="1", maintainance="0", weight="10"))
Esempio n. 8
0
    def test_set_bad_version(self):
        """Set some value with a concurrent update."""
        z = ZkFarmer(self.client)
        self.client.ensure_path("/something")
        orig = self.client.retry
        # Simulate a BadVersionError
        with patch.object(self.client, 'retry') as mock:

            def fail_once(*args, **kwargs):
                mock.side_effect = orig
                raise BadVersionError("Baaaad")

            mock.side_effect = fail_once
            z.set("/something", "enabled", "1")
            z.set("/something", "maintainance", "0")
            z.set("/something", "weight", "10")
        self.assertEqual(z.get("/something"),
                         dict(enabled="1", maintainance="0", weight="10"))
Esempio n. 9
0
 def test_get_inexistent_node(self):
     """Get a node which does not exist."""
     z = ZkFarmer(self.client)
     self.assertEqual(z.get("/nothing"), {"size": 0})
Esempio n. 10
0
 def test_get_inexistent_node(self):
     """Get a node which does not exist."""
     z = ZkFarmer(self.client)
     self.assertEqual(z.get("/nothing"), {"size": 0})