Skip to content

Commit

Permalink
Fixed test cases for new record format
Browse files Browse the repository at this point in the history
  • Loading branch information
jdieter committed Aug 8, 2018
1 parent 4da1e3d commit 49640f1
Show file tree
Hide file tree
Showing 6 changed files with 75 additions and 35 deletions.
6 changes: 3 additions & 3 deletions tests/python/tests/fixtures.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,11 +62,11 @@
REPO_00_OTHXML = os.path.join(REPO_00_PATH, "repodata/",
"ef3e20691954c3d1318ec3071a982da339f4ed76967ded668b795c9e070aaab6-other.xml.gz")
REPO_00_PRIZCK = os.path.join(REPO_00_PATH, "repodata/",
"243baf7c02f5241d46f2e8c237ebc7ea7e257ca993d9cfe1304254c7ba7f6546-primary.xml.zck")
"e0ac03cd77e95e724dbf90ded0dba664e233315a8940051dd8882c56b9878595-primary.xml.zck")
REPO_00_FILZCK = os.path.join(REPO_00_PATH, "repodata/",
"f6232be7311fb31184a849895ae0030caf5b84e628b04be879dccf37e6ad2121-filelists.xml.zck")
"2e7db4492173b6c437fd1299dc335e63d09f24cbdadeac5175a61b787c2f7a44-filelists.xml.zck")
REPO_00_OTHZCK = os.path.join(REPO_00_PATH, "repodata/",
"482e0dcc2e58d0e616f9b00c7789948e6c41f89488e7f4ad2fc3bcc7b549c6d5-other.xml.zck")
"a939c4765106655c3f7a13fb41d0f239824efa66bcd6c1e6c044a854012bda75-other.xml.zck")

REPO_01_PATH = os.path.join(REPOS_PATH, "repo_01")
REPO_01_REPOMD = os.path.join(REPO_01_PATH, "repodata/repomd.xml")
Expand Down
54 changes: 38 additions & 16 deletions tests/python/tests/test_repomdrecord.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,52 +29,74 @@ def test_repomdrecord_fill(self):
self.assertTrue(os.path.exists(self.path00))
self.assertTrue(os.path.exists(self.path02))

rec = cr.RepomdRecord("primary", self.path00, self.path02)
rec = cr.RepomdRecord("primary", self.path00)
zrc = cr.RepomdRecord("primary_zck", self.path02)
self.assertTrue(rec)
self.assertTrue(zrc)

self.assertEqual(rec.location_real, self.path00)
self.assertEqual(rec.location_href, "repodata/primary.xml.gz")
self.assertEqual(rec.location_base, None)
self.assertEqual(rec.zck_loc_real, self.path02)
self.assertEqual(rec.zck_loc_href, "repodata/primary.xml.zck")
self.assertEqual(zrc.location_real, self.path02)
self.assertEqual(zrc.location_href, "repodata/primary.xml.zck")
self.assertEqual(zrc.location_base, None)
self.assertEqual(rec.checksum, None)
self.assertEqual(rec.checksum_type, None)
self.assertEqual(rec.checksum_open, None)
self.assertEqual(rec.checksum_open_type, None)
self.assertEqual(rec.zck_header_checksum, None)
self.assertEqual(rec.zck_header_checksum_type, None)
self.assertEqual(zrc.checksum, None)
self.assertEqual(zrc.checksum_type, None)
self.assertEqual(zrc.checksum_open, None)
self.assertEqual(zrc.checksum_open_type, None)
self.assertEqual(zrc.checksum_header, None)
self.assertEqual(zrc.checksum_header_type, None)
self.assertEqual(rec.timestamp, 0)
self.assertEqual(rec.zck_timestamp, 0)
self.assertEqual(zrc.timestamp, 0)

self.assertEqual(rec.size, 0)
self.assertEqual(rec.size_open, -1)
self.assertEqual(rec.zck_header_size, -1)
self.assertEqual(zrc.size, 0)
self.assertEqual(zrc.size_open, -1)
self.assertEqual(zrc.size_header, -1)
self.assertEqual(rec.db_ver, 0)

rec.fill(cr.SHA256)
zrc.fill(cr.SHA256)

self.assertEqual(rec.location_real, self.path00)
self.assertEqual(rec.location_href, "repodata/primary.xml.gz")
self.assertEqual(rec.location_base, None)
self.assertEqual(rec.zck_loc_href, "repodata/primary.xml.zck")
self.assertEqual(rec.checksum, "1cb61ea996355add02b1426ed4c1780ea75ce0c04c5d1107c025c3fbd7d8bcae")
self.assertEqual(rec.checksum_type, "sha256")
self.assertEqual(rec.checksum_open, "e1e2ffd2fb1ee76f87b70750d00ca5677a252b397ab6c2389137a0c33e7b359f")
self.assertEqual(rec.checksum_open_type, "sha256")
self.assertEqual(rec.zck_header_checksum, "243baf7c02f5241d46f2e8c237ebc7ea7e257ca993d9cfe1304254c7ba7f6546")
self.assertEqual(rec.zck_header_checksum_type, "sha256")
self.assertTrue(rec.timestamp > 0)
self.assertTrue(rec.zck_timestamp > 0)
self.assertEqual(rec.size, 134)
self.assertEqual(rec.size_open, 167)
self.assertEqual(rec.zck_header_size, 132)
self.assertEqual(rec.db_ver, 10)
self.assertEqual(zrc.location_real, self.path02)
self.assertEqual(zrc.location_href, "repodata/primary.xml.zck")
self.assertEqual(zrc.location_base, None)
self.assertEqual(zrc.checksum, "e0ac03cd77e95e724dbf90ded0dba664e233315a8940051dd8882c56b9878595")
self.assertEqual(zrc.checksum_type, "sha256")
self.assertEqual(zrc.checksum_open, "e1e2ffd2fb1ee76f87b70750d00ca5677a252b397ab6c2389137a0c33e7b359f")
self.assertEqual(zrc.checksum_open_type, "sha256")
self.assertEqual(zrc.checksum_header, "243baf7c02f5241d46f2e8c237ebc7ea7e257ca993d9cfe1304254c7ba7f6546")
self.assertEqual(zrc.checksum_header_type, "sha256")
self.assertTrue(zrc.timestamp > 0)
self.assertEqual(zrc.size, 269)
self.assertEqual(zrc.size_open, 167)
self.assertEqual(zrc.size_header, 132)
self.assertEqual(zrc.db_ver, 10)

rec.rename_file()
zrc.rename_file()

# Filename shoud contain a (valid) checksum
self.assertEqual(os.listdir(self.tmpdir),
['243baf7c02f5241d46f2e8c237ebc7ea7e257ca993d9cfe1304254c7ba7f6546-primary.xml.zck',
'1cb61ea996355add02b1426ed4c1780ea75ce0c04c5d1107c025c3fbd7d8bcae-primary.xml.gz'])
filelist = os.listdir(self.tmpdir)
filelist.sort()
self.assertEqual(filelist,
['1cb61ea996355add02b1426ed4c1780ea75ce0c04c5d1107c025c3fbd7d8bcae-primary.xml.gz',
'e0ac03cd77e95e724dbf90ded0dba664e233315a8940051dd8882c56b9878595-primary.xml.zck'])

def test_repomdrecord_setters(self):
shutil.copyfile(REPO_00_PRIXML, self.path00)
Expand Down
50 changes: 34 additions & 16 deletions tests/testdata/repo_00/repodata/repomd.xml
Original file line number Diff line number Diff line change
@@ -1,40 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<repomd xmlns="http://linux.duke.edu/metadata/repo" xmlns:rpm="http://linux.duke.edu/metadata/rpm">
<revision>1533157099</revision>
<revision>1533242352</revision>
<data type="primary">
<checksum type="sha256">1cb61ea996355add02b1426ed4c1780ea75ce0c04c5d1107c025c3fbd7d8bcae</checksum>
<open-checksum type="sha256">e1e2ffd2fb1ee76f87b70750d00ca5677a252b397ab6c2389137a0c33e7b359f</open-checksum>
<zck-header-checksum type="sha256">243baf7c02f5241d46f2e8c237ebc7ea7e257ca993d9cfe1304254c7ba7f6546</zck-header-checksum>
<location href="repodata/1cb61ea996355add02b1426ed4c1780ea75ce0c04c5d1107c025c3fbd7d8bcae-primary.xml.gz"/>
<zck-location href="repodata/243baf7c02f5241d46f2e8c237ebc7ea7e257ca993d9cfe1304254c7ba7f6546-primary.xml.zck"/>
<timestamp>1533157099</timestamp>
<zck-timestamp>1533157099</zck-timestamp>
<timestamp>1533242352</timestamp>
<size>134</size>
<open-size>167</open-size>
<zck-header-size>132</zck-header-size>
</data>
<data type="filelists">
<checksum type="sha256">95a4415d859d7120efb6b3cf964c07bebbff9a5275ca673e6e74a97bcbfb2a5f</checksum>
<open-checksum type="sha256">bf9808b81cb2dbc54b4b8e35adc584ddcaa73bd81f7088d73bf7dbbada961310</open-checksum>
<zck-header-checksum type="sha256">f6232be7311fb31184a849895ae0030caf5b84e628b04be879dccf37e6ad2121</zck-header-checksum>
<location href="repodata/95a4415d859d7120efb6b3cf964c07bebbff9a5275ca673e6e74a97bcbfb2a5f-filelists.xml.gz"/>
<zck-location href="repodata/f6232be7311fb31184a849895ae0030caf5b84e628b04be879dccf37e6ad2121-filelists.xml.zck"/>
<timestamp>1533157099</timestamp>
<zck-timestamp>1533157099</zck-timestamp>
<timestamp>1533242352</timestamp>
<size>123</size>
<open-size>125</open-size>
<zck-header-size>131</zck-header-size>
</data>
<data type="other">
<checksum type="sha256">ef3e20691954c3d1318ec3071a982da339f4ed76967ded668b795c9e070aaab6</checksum>
<open-checksum type="sha256">e0ed5e0054194df036cf09c1a911e15bf2a4e7f26f2a788b6f47d53e80717ccc</open-checksum>
<zck-header-checksum type="sha256">482e0dcc2e58d0e616f9b00c7789948e6c41f89488e7f4ad2fc3bcc7b549c6d5</zck-header-checksum>
<location href="repodata/ef3e20691954c3d1318ec3071a982da339f4ed76967ded668b795c9e070aaab6-other.xml.gz"/>
<zck-location href="repodata/482e0dcc2e58d0e616f9b00c7789948e6c41f89488e7f4ad2fc3bcc7b549c6d5-other.xml.zck"/>
<timestamp>1533157099</timestamp>
<zck-timestamp>1533157099</zck-timestamp>
<timestamp>1533242352</timestamp>
<size>123</size>
<open-size>121</open-size>
<zck-header-size>131</zck-header-size>
</data>
<data type="primary_zck">
<checksum type="sha256">e0ac03cd77e95e724dbf90ded0dba664e233315a8940051dd8882c56b9878595</checksum>
<open-checksum type="sha256">e1e2ffd2fb1ee76f87b70750d00ca5677a252b397ab6c2389137a0c33e7b359f</open-checksum>
<header-checksum type="sha256">243baf7c02f5241d46f2e8c237ebc7ea7e257ca993d9cfe1304254c7ba7f6546</header-checksum>
<location href="repodata/e0ac03cd77e95e724dbf90ded0dba664e233315a8940051dd8882c56b9878595-primary.xml.zck"/>
<timestamp>1533242352</timestamp>
<size>269</size>
<open-size>167</open-size>
<header-size>132</header-size>
</data>
<data type="filelists_zck">
<checksum type="sha256">2e7db4492173b6c437fd1299dc335e63d09f24cbdadeac5175a61b787c2f7a44</checksum>
<open-checksum type="sha256">bf9808b81cb2dbc54b4b8e35adc584ddcaa73bd81f7088d73bf7dbbada961310</open-checksum>
<header-checksum type="sha256">f6232be7311fb31184a849895ae0030caf5b84e628b04be879dccf37e6ad2121</header-checksum>
<location href="repodata/2e7db4492173b6c437fd1299dc335e63d09f24cbdadeac5175a61b787c2f7a44-filelists.xml.zck"/>
<timestamp>1533242352</timestamp>
<size>262</size>
<open-size>125</open-size>
<header-size>131</header-size>
</data>
<data type="other_zck">
<checksum type="sha256">a939c4765106655c3f7a13fb41d0f239824efa66bcd6c1e6c044a854012bda75</checksum>
<open-checksum type="sha256">e0ed5e0054194df036cf09c1a911e15bf2a4e7f26f2a788b6f47d53e80717ccc</open-checksum>
<header-checksum type="sha256">482e0dcc2e58d0e616f9b00c7789948e6c41f89488e7f4ad2fc3bcc7b549c6d5</header-checksum>
<location href="repodata/a939c4765106655c3f7a13fb41d0f239824efa66bcd6c1e6c044a854012bda75-other.xml.zck"/>
<timestamp>1533242352</timestamp>
<size>263</size>
<open-size>121</open-size>
<header-size>131</header-size>
</data>
</repomd>

0 comments on commit 49640f1

Please sign in to comment.