Example #1
0
 def test_nodelist_no_caching(self):
     p = MemcacheProxy(self._storage, cache_nodelist=False)
     p.enumerate_nodes()
     p.enumerate_nodes()
     expected = [mock.call(), mock.call()]
     self.assertListEqual(self._storage.enumerate_nodes.call_args_list,
                          expected)
 def test_classes_caching(self):
     p = MemcacheProxy(self._storage, cache_classes=True)
     NAME = 'foo'; NAME2 = 'bar'; RET = 'baz'
     self._storage.get_class.return_value = RET
     self.assertEqual(p.get_class(NAME), RET)
     self.assertEqual(p.get_class(NAME), RET)
     self.assertEqual(p.get_class(NAME2), RET)
     self.assertEqual(p.get_class(NAME2), RET)
     expected = [mock.call(NAME), mock.call(NAME2)] # called once each
     self.assertListEqual(self._storage.get_class.call_args_list, expected)
Example #3
0
 def test_classes_caching(self):
     p = MemcacheProxy(self._storage, cache_classes=True)
     NAME = 'foo'; NAME2 = 'bar'; RET = 'baz'; SETTINGS = Settings()
     self._storage.get_class.return_value = RET
     self.assertEqual(p.get_class(NAME, None, SETTINGS), RET)
     self.assertEqual(p.get_class(NAME, None, SETTINGS), RET)
     self.assertEqual(p.get_class(NAME2, None, SETTINGS), RET)
     self.assertEqual(p.get_class(NAME2, None, SETTINGS), RET)
     expected = [mock.call(NAME, None, SETTINGS), mock.call(NAME2, None, SETTINGS)] # called once each
     self.assertListEqual(self._storage.get_class.call_args_list, expected)
Example #4
0
 def test_no_nodes_caching(self):
     p = MemcacheProxy(self._storage, cache_nodes=False)
     NAME = 'foo'; NAME2 = 'bar'; RET = 'baz'; SETTINGS = Settings()
     self._storage.get_node.return_value = RET
     self.assertEqual(p.get_node(NAME, SETTINGS), RET)
     self.assertEqual(p.get_node(NAME, SETTINGS), RET)
     self.assertEqual(p.get_node(NAME2, SETTINGS), RET)
     self.assertEqual(p.get_node(NAME2, SETTINGS), RET)
     expected = [mock.call(NAME, SETTINGS), mock.call(NAME, SETTINGS),
                 mock.call(NAME2, SETTINGS), mock.call(NAME2, SETTINGS)]
     self.assertListEqual(self._storage.get_node.call_args_list, expected)
 def test_no_nodes_caching(self):
     p = MemcacheProxy(self._storage, cache_nodes=False)
     NAME = 'foo'; NAME2 = 'bar'; RET = 'baz'
     self._storage.get_node.return_value = RET
     self.assertEqual(p.get_node(NAME), RET)
     self.assertEqual(p.get_node(NAME), RET)
     self.assertEqual(p.get_node(NAME2), RET)
     self.assertEqual(p.get_node(NAME2), RET)
     expected = [mock.call(NAME), mock.call(NAME),
                 mock.call(NAME2), mock.call(NAME2)]
     self.assertListEqual(self._storage.get_node.call_args_list, expected)
Example #6
0
 def test_nodes_caching(self):
     p = MemcacheProxy(self._storage, cache_nodes=True)
     NAME = 'foo'
     NAME2 = 'bar'
     RET = 'baz'
     self._storage.get_node.return_value = RET
     self.assertEqual(p.get_node(NAME), RET)
     self.assertEqual(p.get_node(NAME), RET)
     self.assertEqual(p.get_node(NAME2), RET)
     self.assertEqual(p.get_node(NAME2), RET)
     expected = [mock.call(NAME), mock.call(NAME2)]  # called once each
     self.assertListEqual(self._storage.get_node.call_args_list, expected)
Example #7
0
 def test_no_classes_caching(self):
     p = MemcacheProxy(self._storage, cache_classes=False)
     NAME = 'foo'
     NAME2 = 'bar'
     RET = 'baz'
     self._storage.get_class.return_value = RET
     self.assertEqual(p.get_class(NAME, None), RET)
     self.assertEqual(p.get_class(NAME, None), RET)
     self.assertEqual(p.get_class(NAME2, None), RET)
     self.assertEqual(p.get_class(NAME2, None), RET)
     expected = [
         mock.call(NAME, None),
         mock.call(NAME, None),
         mock.call(NAME2, None),
         mock.call(NAME2, None)
     ]
     self.assertListEqual(self._storage.get_class.call_args_list, expected)
Example #8
0
def get_storage(storage_type, nodes_uri, classes_uri, **kwargs):
    storage_class = StorageBackendLoader(storage_type).load()
    return MemcacheProxy(storage_class(nodes_uri, classes_uri, **kwargs))
 def test_nodelist_caching(self):
     p = MemcacheProxy(self._storage, cache_nodelist=True)
     p.enumerate_nodes()
     p.enumerate_nodes()
     expected = [mock.call()] # once only
     self.assertListEqual(self._storage.enumerate_nodes.call_args_list, expected)