From: Brian Warner <warner@lothar.com>
Date: Wed, 18 Nov 2009 16:42:38 +0000 (-0800)
Subject: ImmutableDirectoryURIVerifier: fix verifycap handling
X-Git-Url: https://git.rkrishnan.org/specifications/components/com_hotproperty/frontends/?a=commitdiff_plain;h=512fe3ad62d0ad9456e624c2aac8be4f591310c5;p=tahoe-lafs%2Ftahoe-lafs.git

ImmutableDirectoryURIVerifier: fix verifycap handling
---

diff --git a/src/allmydata/test/test_uri.py b/src/allmydata/test/test_uri.py
index 9a2143ef..14260616 100644
--- a/src/allmydata/test/test_uri.py
+++ b/src/allmydata/test/test_uri.py
@@ -362,12 +362,18 @@ class NewDirnode(unittest.TestCase):
 
         u2_verifier = u2.get_verify_cap()
         self.failUnless(isinstance(u2_verifier,
-                                   uri.ImmutableDirectoryURIVerifier), u2_verifier)
+                                   uri.ImmutableDirectoryURIVerifier),
+                        u2_verifier)
         self.failUnless(IVerifierURI.providedBy(u2_verifier))
+        u2vs = u2_verifier.to_string()
+        # URI:DIR2-CHK-Verifier:$key:$ueb:$k:$n:$size
+        self.failUnless(u2vs.startswith("URI:DIR2-CHK-Verifier:"), u2vs)
         u2_verifier_fileuri = u2_verifier.get_filenode_cap()
         self.failUnless(IVerifierURI.providedBy(u2_verifier_fileuri))
-        self.failUnlessEqual(u2_verifier_fileuri.to_string(),
-                             fnuri.get_verify_cap().to_string())
+        u2vfs = u2_verifier_fileuri.to_string()
+        # URI:CHK-Verifier:$key:$ueb:$k:$n:$size
+        self.failUnlessEqual(u2vfs, fnuri.get_verify_cap().to_string())
+        self.failUnlessEqual(u2vs[len("URI:DIR2-"):], u2vfs[len("URI:"):])
         self.failUnless(str(u2_verifier))
 
     def test_literal(self):
diff --git a/src/allmydata/uri.py b/src/allmydata/uri.py
index 83d80f5d..7c0bc10f 100644
--- a/src/allmydata/uri.py
+++ b/src/allmydata/uri.py
@@ -115,6 +115,7 @@ class CHKFileURI(_BaseURI):
 class CHKFileVerifierURI(_BaseURI):
     implements(IVerifierURI)
 
+    BASE_STRING='URI:CHK-Verifier:'
     STRING_RE=re.compile('^URI:CHK-Verifier:'+BASE32STR_128bits+':'+
                          BASE32STR_256bits+':'+NUMBER+':'+NUMBER+':'+NUMBER)
     HUMAN_RE=re.compile('^'+OPTIONALHTTPLEAD+'URI'+SEP+'CHK-Verifier'+SEP+