def _setup(self, time_, entries): inst = ZkSharedCache("zk", "path", "handler") inst._zk = create_mock(["is_connected"]) time_.return_value = 1000 inst._entries = entries inst._kazoo = create_mock(["delete"]) inst._path = "/path" return inst
def test_no_entry(self, init): inst = ZkSharedCache("zk", "path", "handler") inst._path = "/path" inst._kazoo = create_mock(["get"]) inst._kazoo.get.side_effect = NoNodeError inst._entries = create_mock(["pop"]) # Call ntools.assert_raises(ZkNoNodeError, inst._get, "name") # Tests inst._kazoo.get.assert_called_once_with("/path/name") inst._entries.pop.assert_called_once_with("name", None)
def test_success(self, init, time_): inst = ZkSharedCache("zk", "path", "handler") inst._path = "/path" inst._kazoo = create_mock(["get"]) inst._kazoo.get.return_value = ("data", "meta") inst._entries = create_mock(["setdefault"]) # Call ntools.eq_(inst._get("name"), "data") # Tests inst._kazoo.get.assert_called_once_with("/path/name") inst._entries.setdefault.assert_called_once_with( "name", time_.return_value)
def test_full(self, init): inst = ZkSharedCache("zk", "path", "handler") inst._zk = create_mock(["conn_epoch", "is_connected"]) inst._incoming_entries = create_mock(["__bool__", "popleft"]) inst._incoming_entries.__bool__.side_effect = True, True, False inst._incoming_entries.popleft.side_effect = ("inc0", 1), ("inc1", 0) inst._entries = {"inc0": 0, "old0": 0} inst._list_entries = create_mock() inst._list_entries.return_value = "inc0", "inc1", "new0" inst._handle_entries = create_mock() inst._path = "/path" # Call inst.process() # Tests ntools.eq_(inst._entries, {"inc0": 0, "inc1": 0}) inst._handle_entries.assert_called_once_with({"new0"})