Esempio n. 1
0
 def test_equality(self):
     """LiteralFileNodes are equal iff they have the same URI."""
     uri1 = uri.LiteralFileURI(b"1")
     uri2 = uri.LiteralFileURI(b"2")
     lfn1 = LiteralFileNode(uri1)
     lfn1b = LiteralFileNode(uri1)
     lfn2 = LiteralFileNode(uri2)
     self.assertTrue(lfn1 == lfn1b)
     self.assertFalse(lfn1 != lfn1b)
     self.assertTrue(lfn1 != lfn2)
     self.assertFalse(lfn1 == lfn2)
     self.assertTrue(lfn1 != 300)
     self.assertFalse(lfn1 == 300)
Esempio n. 2
0
    def test_literal_filenode(self):
        DATA = "I am a short file."
        u = uri.LiteralFileURI(data=DATA)
        fn1 = LiteralFileNode(u)

        d = fn1.check(Monitor())
        def _check_checker_results(cr):
            self.failUnlessEqual(cr, None)
        d.addCallback(_check_checker_results)

        d.addCallback(lambda res: fn1.check(Monitor(), verify=True))
        d.addCallback(_check_checker_results)

        return d
Esempio n. 3
0
    def test_literal_filenode(self):
        DATA = "I am a short file."
        u = uri.LiteralFileURI(data=DATA)
        fn1 = LiteralFileNode(u)

        d = fn1.check(Monitor())
        def _check_checker_results(cr):
            self.failUnlessEqual(cr, None)
        d.addCallback(_check_checker_results)

        d.addCallback(lambda res: fn1.check(Monitor(), verify=True))
        d.addCallback(_check_checker_results)

        return d
Esempio n. 4
0
    def test_literal_filenode(self):
        DATA = "I am a short file."
        u = uri.LiteralFileURI(data=DATA)
        fn1 = LiteralFileNode(u)
        fn2 = LiteralFileNode(u)
        self.failUnlessEqual(fn1, fn2)
        self.failIfEqual(fn1, "I am not a filenode")
        self.failIfEqual(fn1, NotANode())
        self.failUnlessEqual(fn1.get_uri(), u.to_string())
        self.failUnlessEqual(fn1.get_cap(), u)
        self.failUnlessEqual(fn1.get_readcap(), u)
        self.failUnless(fn1.is_readonly())
        self.failIf(fn1.is_mutable())
        self.failIf(fn1.is_unknown())
        self.failUnless(fn1.is_allowed_in_immutable_directory())
        self.failUnlessEqual(fn1.get_write_uri(), None)
        self.failUnlessEqual(fn1.get_readonly_uri(), u.to_string())
        self.failUnlessEqual(fn1.get_size(), len(DATA))
        self.failUnlessEqual(fn1.get_storage_index(), None)
        fn1.raise_error()
        fn2.raise_error()
        d = {}
        d[fn1] = 1  # exercise __hash__

        v = fn1.get_verify_cap()
        self.failUnlessEqual(v, None)
        self.failUnlessEqual(fn1.get_repair_cap(), None)

        d = download_to_data(fn1)

        def _check(res):
            self.failUnlessEqual(res, DATA)

        d.addCallback(_check)

        d.addCallback(lambda res: download_to_data(fn1, 1, 5))

        def _check_segment(res):
            self.failUnlessEqual(res, DATA[1:1 + 5])

        d.addCallback(_check_segment)
        d.addCallback(lambda ignored: fn1.get_best_readable_version())
        d.addCallback(lambda fn2: self.failUnlessEqual(fn1, fn2))
        d.addCallback(lambda ignored: fn1.get_size_of_best_version())
        d.addCallback(lambda size: self.failUnlessEqual(size, len(DATA)))
        d.addCallback(lambda ignored: fn1.download_to_data())
        d.addCallback(lambda data: self.failUnlessEqual(data, DATA))
        d.addCallback(lambda ignored: fn1.download_best_version())
        d.addCallback(lambda data: self.failUnlessEqual(data, DATA))

        return d
Esempio n. 5
0
 def _create_lit(self, cap):
     return LiteralFileNode(cap)
Esempio n. 6
0
    def test_literal_filenode(self):
        DATA = "I am a short file."
        u = uri.LiteralFileURI(data=DATA)
        fn1 = LiteralFileNode(u)
        fn2 = LiteralFileNode(u)
        self.failUnlessEqual(fn1, fn2)
        self.failIfEqual(fn1, "I am not a filenode")
        self.failIfEqual(fn1, NotANode())
        self.failUnlessEqual(fn1.get_uri(), u.to_string())
        self.failUnlessEqual(fn1.get_cap(), u)
        self.failUnlessEqual(fn1.get_readcap(), u)
        self.failUnless(fn1.is_readonly())
        self.failIf(fn1.is_mutable())
        self.failIf(fn1.is_unknown())
        self.failUnless(fn1.is_allowed_in_immutable_directory())
        self.failUnlessEqual(fn1.get_write_uri(), None)
        self.failUnlessEqual(fn1.get_readonly_uri(), u.to_string())
        self.failUnlessEqual(fn1.get_size(), len(DATA))
        self.failUnlessEqual(fn1.get_storage_index(), None)
        fn1.raise_error()
        fn2.raise_error()
        d = {}
        d[fn1] = 1 # exercise __hash__

        v = fn1.get_verify_cap()
        self.failUnlessEqual(v, None)
        self.failUnlessEqual(fn1.get_repair_cap(), None)

        d = download_to_data(fn1)
        def _check(res):
            self.failUnlessEqual(res, DATA)
        d.addCallback(_check)

        d.addCallback(lambda res: download_to_data(fn1, 1, 5))
        def _check_segment(res):
            self.failUnlessEqual(res, DATA[1:1+5])
        d.addCallback(_check_segment)

        return d