d.addCallback(_check_results)
return d
+ def test_deepcheck_cachemisses(self):
+ self.basedir = "dirnode/Dirnode/test_mdmf_cachemisses"
+ self.set_up_grid()
+ d = self._test_deepcheck_create()
+ # Clear the counters and set the rootnode
+ d.addCallback(lambda rootnode:
+ not [ss._clear_counters() for ss
+ in self.g.wrappers_by_id.values()] or rootnode)
+ d.addCallback(lambda rootnode: rootnode.start_deep_check().when_done())
+ def _check(ign):
+ count = sum([ss.counter_by_methname['slot_readv']
+ for ss in self.g.wrappers_by_id.values()])
+ self.failIf(count > 60, 'Expected only 60 cache misses,'
+ 'unfortunately there were %d' % (count,))
+ d.addCallback(_check)
+ return d
+
def test_deepcheck_mdmf(self):
self.basedir = "dirnode/Dirnode/test_deepcheck_mdmf"
self.set_up_grid()
known_tree = b32decode(self.known_tree)
nodemaker = NodeMaker(None, None, None,
None, None,
- {"k": 3, "n": 10}, None)
+ {"k": 3, "n": 10}, None, None)
write_uri = "URI:SSK-RO:e3mdrzfwhoq42hy5ubcz6rp3o4:ybyibhnp3vvwuq2vaw2ckjmesgkklfs6ghxleztqidihjyofgw7q"
filenode = nodemaker.create_from_cap(write_uri)
node = dirnode.DirectoryNode(filenode, nodemaker, None)
return kids
def test_deep_immutable(self):
- nm = NodeMaker(None, None, None, None, None, {"k": 3, "n": 10}, None)
+ nm = NodeMaker(None, None, None, None, None, {"k": 3, "n": 10}, None, None)
fn = MinimalFakeMutableFile()
kids = self._make_kids(nm, ["imm", "lit", "write", "read",
def __init__(self):
self.nodemaker = FakeNodeMaker(None, None, None,
None, None,
- {"k":3,"n":10}, None)
+ {"k":3,"n":10}, None, None)
def create_node_from_uri(self, rwcap, rocap):
return self.nodemaker.create_from_cap(rwcap, rocap)
n.raise_error()
for (i, n) in unknown_rw:
- self.failUnlessRaises(MustNotBeUnknownRWError, lambda: n.raise_error())
+ self.failUnlessRaises(MustNotBeUnknownRWError, lambda n=n: n.raise_error())
for (i, n) in must_be_ro:
- self.failUnlessRaises(MustBeReadonlyError, lambda: n.raise_error())
+ self.failUnlessRaises(MustBeReadonlyError, lambda n=n: n.raise_error())
for (i, n) in must_be_imm:
- self.failUnlessRaises(MustBeDeepImmutableError, lambda: n.raise_error())
+ self.failUnlessRaises(MustBeDeepImmutableError, lambda n=n: n.raise_error())
for (i, n) in bad_uri:
- self.failUnlessRaises(uri.BadURIError, lambda: n.raise_error())
+ self.failUnlessRaises(uri.BadURIError, lambda n=n: n.raise_error())
for (i, n) in ok:
self.failIf(n.get_readonly_uri() is None, i)
c0.get_history(), c0.getServiceNamed("uploader"),
c0.terminator,
c0.get_encoding_parameters(),
+ c0.mutable_file_default,
c0._key_generator)
n = nm.create_from_cap(self.root_uri)
assert n._node.please_ucwe_after_next_upload == False