def test_manifest_creation(self): manifest = cvmfs.Manifest(self.sane_manifest) last_modified = datetime.datetime(2015, 6, 10, 12, 2, 30, tzinfo=tzutc()) self.assertTrue(hasattr(manifest, 'root_catalog')) self.assertTrue(hasattr(manifest, 'ttl')) self.assertTrue(hasattr(manifest, 'repository_name')) self.assertTrue(hasattr(manifest, 'root_hash')) self.assertTrue(hasattr(manifest, 'revision')) self.assertTrue(hasattr(manifest, 'last_modified')) self.assertTrue(hasattr(manifest, 'certificate')) self.assertTrue(hasattr(manifest, 'root_catalog_size')) self.assertTrue(hasattr(manifest, 'history_database')) self.assertEqual('044206fcff4545283aaa452b80edfd5d8c740b20', manifest.root_catalog) self.assertEqual(900, manifest.ttl) self.assertEqual('atlas.cern.ch', manifest.repository_name) self.assertEqual('d41d8cd98f00b204e9800998ecf8427e', manifest.root_hash) self.assertEqual(8722, manifest.revision) self.assertEqual(last_modified, manifest.last_modified) self.assertEqual('0b457ac12225018e0a15330364c20529e15012ab', manifest.certificate) self.assertEqual(75834368, manifest.root_catalog_size) self.assertEqual('50c37f5517aea2ce9a22c3f17a7056a4f60e7d07', manifest.history_database)
def test_manifest_creation(self): manifest = cvmfs.Manifest(self.sane_manifest) last_modified = datetime.datetime(2014, 1, 22, 13, 0, 40, tzinfo=tzutc()) self.assertTrue(hasattr(manifest, 'root_catalog')) self.assertTrue(hasattr(manifest, 'ttl')) self.assertTrue(hasattr(manifest, 'micro_catalog')) self.assertTrue(hasattr(manifest, 'repository_name')) self.assertTrue(hasattr(manifest, 'root_hash')) self.assertTrue(hasattr(manifest, 'revision')) self.assertTrue(hasattr(manifest, 'last_modified')) self.assertTrue(hasattr(manifest, 'certificate')) self.assertFalse(hasattr(manifest, 'history_database')) self.assertEqual('600230b0ba7620426f2e898f1e1f43c5466efe59', manifest.root_catalog) self.assertEqual(3600, manifest.ttl) self.assertEqual('0000000000000000000000000000000000000000', manifest.micro_catalog) self.assertEqual('atlas.cern.ch', manifest.repository_name) self.assertEqual('d41d8cd98f00b204e9800998ecf8427e', manifest.root_hash) self.assertEqual(4264, manifest.revision) self.assertEqual(last_modified, manifest.last_modified) self.assertEqual('0b457ac12225018e0a15330364c20529e15012ab', manifest.certificate)
def test_minimal_manifest(self): manifest = cvmfs.Manifest(self.minimal_manifest) self.assertTrue(hasattr(manifest, 'root_catalog')) self.assertTrue(hasattr(manifest, 'root_hash')) self.assertTrue(hasattr(manifest, 'ttl')) self.assertTrue(hasattr(manifest, 'revision')) self.assertTrue(hasattr(manifest, 'repository_name')) self.assertEqual('600230b0ba7620426f2e898f1e1f43c5466efe59', manifest.root_catalog) self.assertEqual('d41d8cd98f00b204e9800998ecf8427e', manifest.root_hash) self.assertEqual(3600, manifest.ttl) self.assertEqual(4264, manifest.revision) self.assertEqual('atlas.cern.ch', manifest.repository_name)
def test_verify_inconsistent_signature(self): manifest = cvmfs.Manifest(self.insane_manifest_broken_signature) cert = cvmfs.Certificate(open(self.certificate_file)) is_valid = manifest.verify_signature(cert) self.assertFalse(is_valid)
def test_verify_invalid_signature(self): manifest = cvmfs.Manifest(self.insane_manifest_tampered) cert = cvmfs.Certificate(open(self.certificate_file)) is_valid = manifest.verify_signature(cert) self.assertFalse(is_valid)
def test_verify_signature(self): manifest = cvmfs.Manifest(self.sane_manifest) cert = cvmfs.Certificate(open(self.certificate_file)) is_valid = manifest.verify_signature(cert) self.assertTrue(is_valid)