deltarepo: Add acceptance tests
authorTomas Mlcoch <tmlcoch@redhat.com>
Tue, 29 Oct 2013 14:32:52 +0000 (15:32 +0100)
committerTomas Mlcoch <tmlcoch@redhat.com>
Tue, 29 Oct 2013 14:35:15 +0000 (15:35 +0100)
66 files changed:
deltarepo/acceptance_tests/TODO.md [new file with mode: 0644]
deltarepo/acceptance_tests/repos/note [new file with mode: 0644]
deltarepo/acceptance_tests/repos/regenrepos.sh [new file with mode: 0755]
deltarepo/acceptance_tests/repos/repo1/Cython-0.17.1-2.el7.src.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/gen.sh [new file with mode: 0755]
deltarepo/acceptance_tests/repos/repo1/group.xml [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/iok-1.3.11-1.fc14.i686.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/repodata/06319bdfdf3cb3aae73932b1d368013ecf613f8eea101aff50f3a817cae19ffb-primary.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/repodata/46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b-group.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/repodata/654bfc0a6bbf9905b9095f79730e1e505d688e2c1746df7d699ab70c114fdfd4-filelists.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/repodata/756dd17c2e5a8c624407daf511cfcbcefd4155b10502bd320f2c20590d15c4fe-other.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/repodata/75e95cb144f9102aab7ae3fd2451b91d506f04c73423afd90ff15c3d83eff7d0-primary.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/repodata/a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5-group.xml [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/repodata/a6b171d9373992fe0039cfa75c01b31ce34abf5fb02f9d61880be8c01e7b0453-other.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/repodata/f4a97b9186cc7cec8dd2df9f538d0debee0a380ba846ca7ae589793e9c102779-filelists.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo1/repodata/repomd.xml [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo2/gen.sh [new file with mode: 0755]
deltarepo/acceptance_tests/repos/repo2/imsettings-0.108.1-2.fc14.i686.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo2/iok-1.3.11-1.fc14.i686.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo2/repodata/1a9e05b75031a68bf57dc54bfd25b71cf17e9132d6ea57e956a5fa55a522bd4c-primary.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo2/repodata/7d9bb407893e18cafdfe6e572132be417b8cc71438c181766ceb0bf746bb4110-primary.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo2/repodata/a0a5b63949d221cb6dd314d5138f1d4bc1e57e90d64c087130ced219b9eac025-filelists.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo2/repodata/be2d1bf005049f77aa0ceaa253c58a89bb542438c7014ee3d18a11b52fbf1930-other.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo2/repodata/c7efed490fec0b77fcbccd0b51063c8fda3f2d2de173199ef8f8bcf1bf98bc18-other.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo2/repodata/e2bc196c1378738a0be8684f797dc80f20e50384493a15c8a1a84c68c4fd5066-filelists.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo2/repodata/repomd.xml [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/Archer-3.4.5-6.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/balicek-utf8-1.1.1-1.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/comps.xml [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/empty-0-0.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/fake_bash-1.1.1-1.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/foobar [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/gen.sh [new file with mode: 0755]
deltarepo/acceptance_tests/repos/repo3/iok-1.3.11-1.fc14.i686.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/repodata/01d96c6bd24951246d844e1f1dffb7953b5712087be489186c2e235566dd791e-filelists.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/repodata/06d8204d74de57ed4050a72280d25d2e73dabf8298f94e415d12d3b847682752-foobar.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/repodata/07be04d07513fc6e9e6aa4e74c2e7c03362ecdadc5f2e6f30a5dd595d500148a-primary.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/repodata/46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b-comps.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/repodata/988108bf9074178942535ec19cbb873de3b28e46f251c08a00aba5e10e1592c0-filelists.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/repodata/a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5-comps.xml [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/repodata/b3fb18d3c8cbbab1578ddcdecacb2080f0dff66348cc4a0f40a07340f49a580c-other.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/repodata/b8e7fd92e4596d9f2c78784c81619a278ae0c227edbdbdbb528a468ed7e74fb9-primary.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/repodata/d2685baff8b678d7c670c1af6896e0988708e9b2381de429ad2e0b6f698ae926-other.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/repodata/repomd.xml [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3/super_kernel-6.0.1-2.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/Archer-3.4.5-6.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/balicek-iso88591-1.1.1-1.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/balicek-iso88592-1.1.1-1.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/balicek-utf8-1.1.1-1.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/comps.xml [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/empty-0-0.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/fake_bash-1.1.1-1.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/gen.sh [new file with mode: 0755]
deltarepo/acceptance_tests/repos/repo3_md5/iok-1.3.11-1.fc14.i686.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/repodata/219e3abab80cf0d6f0f086e2cb921ebd-comps.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/repodata/2cf05ca6ca26bfe4aea8c88c7980a7b0-filelists.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/repodata/6f167684fc6301b3cdf8c2f0d1ededad-primary.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/repodata/71e71de922ccdaf23c1cb02d8b234c91-comps.xml [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/repodata/73538b4dd5d121108f8b98f72672e8f7-other.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/repodata/802912716f5820b736afc409b831436e-primary.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/repodata/959970da257ec7696a0bffdc52752d5f-comps.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/repodata/d240d93e678b4fcb30259335d3af15b7-filelists.xml.gz [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/repodata/de34683b2f4d0d987b4f6e0b09a9c87f-other.sqlite.bz2 [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/repodata/repomd.xml [new file with mode: 0644]
deltarepo/acceptance_tests/repos/repo3_md5/super_kernel-6.0.1-2.x86_64.rpm [new file with mode: 0644]
deltarepo/acceptance_tests/test.sh [new file with mode: 0755]

diff --git a/deltarepo/acceptance_tests/TODO.md b/deltarepo/acceptance_tests/TODO.md
new file mode 100644 (file)
index 0000000..02a6b47
--- /dev/null
@@ -0,0 +1,5 @@
+TODO
+====
+
+* Replace the real pacakges (iok, ...), with the fake (and smaller) ones
+
diff --git a/deltarepo/acceptance_tests/repos/note b/deltarepo/acceptance_tests/repos/note
new file mode 100644 (file)
index 0000000..69f61dc
--- /dev/null
@@ -0,0 +1 @@
+CREATEREPO=../../../../createrepo_c MODIFYREPO="../../../../modifyrepo_c" ./regenrepos.sh
diff --git a/deltarepo/acceptance_tests/repos/regenrepos.sh b/deltarepo/acceptance_tests/repos/regenrepos.sh
new file mode 100755 (executable)
index 0000000..22cb2b4
--- /dev/null
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+MY_DIR=`dirname $0`
+MY_DIR="$MY_DIR/"
+
+# Note:
+# If you wanna use different createrepo tool, set the CREATEREPO
+# environ variable
+# E.g.:
+# $ CREATEREPO="createrepo" ./regenrepos.sh
+
+for dir in $MY_DIR/*/
+do
+    echo "### Regeneration of $dir"
+    $dir/gen.sh
+    echo
+done
diff --git a/deltarepo/acceptance_tests/repos/repo1/Cython-0.17.1-2.el7.src.rpm b/deltarepo/acceptance_tests/repos/repo1/Cython-0.17.1-2.el7.src.rpm
new file mode 100644 (file)
index 0000000..d17d1f6
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo1/Cython-0.17.1-2.el7.src.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo1/gen.sh b/deltarepo/acceptance_tests/repos/repo1/gen.sh
new file mode 100755 (executable)
index 0000000..aba7930
--- /dev/null
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+MY_DIR=`dirname $0`
+
+if [[ -z "$CREATEREPO" ]]
+then
+    CREATEREPO="createrepo_c"
+fi
+
+pushd "$MY_DIR"
+$CREATEREPO --groupfile group.xml --revision "1st repo" --content "A content tag" .
+popd
diff --git a/deltarepo/acceptance_tests/repos/repo1/group.xml b/deltarepo/acceptance_tests/repos/repo1/group.xml
new file mode 100644 (file)
index 0000000..068519c
--- /dev/null
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE comps PUBLIC "-//Red Hat, Inc.//DTD Comps info//EN" "comps.dtd">
+<comps>
+<!-- -->
+</comps>
diff --git a/deltarepo/acceptance_tests/repos/repo1/iok-1.3.11-1.fc14.i686.rpm b/deltarepo/acceptance_tests/repos/repo1/iok-1.3.11-1.fc14.i686.rpm
new file mode 100644 (file)
index 0000000..7450fee
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo1/iok-1.3.11-1.fc14.i686.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/06319bdfdf3cb3aae73932b1d368013ecf613f8eea101aff50f3a817cae19ffb-primary.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo1/repodata/06319bdfdf3cb3aae73932b1d368013ecf613f8eea101aff50f3a817cae19ffb-primary.sqlite.bz2
new file mode 100644 (file)
index 0000000..22ffd53
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo1/repodata/06319bdfdf3cb3aae73932b1d368013ecf613f8eea101aff50f3a817cae19ffb-primary.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b-group.xml.gz b/deltarepo/acceptance_tests/repos/repo1/repodata/46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b-group.xml.gz
new file mode 100644 (file)
index 0000000..6a703ab
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo1/repodata/46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b-group.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/654bfc0a6bbf9905b9095f79730e1e505d688e2c1746df7d699ab70c114fdfd4-filelists.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo1/repodata/654bfc0a6bbf9905b9095f79730e1e505d688e2c1746df7d699ab70c114fdfd4-filelists.sqlite.bz2
new file mode 100644 (file)
index 0000000..a020483
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo1/repodata/654bfc0a6bbf9905b9095f79730e1e505d688e2c1746df7d699ab70c114fdfd4-filelists.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/756dd17c2e5a8c624407daf511cfcbcefd4155b10502bd320f2c20590d15c4fe-other.xml.gz b/deltarepo/acceptance_tests/repos/repo1/repodata/756dd17c2e5a8c624407daf511cfcbcefd4155b10502bd320f2c20590d15c4fe-other.xml.gz
new file mode 100644 (file)
index 0000000..6cb3b01
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo1/repodata/756dd17c2e5a8c624407daf511cfcbcefd4155b10502bd320f2c20590d15c4fe-other.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/75e95cb144f9102aab7ae3fd2451b91d506f04c73423afd90ff15c3d83eff7d0-primary.xml.gz b/deltarepo/acceptance_tests/repos/repo1/repodata/75e95cb144f9102aab7ae3fd2451b91d506f04c73423afd90ff15c3d83eff7d0-primary.xml.gz
new file mode 100644 (file)
index 0000000..c121149
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo1/repodata/75e95cb144f9102aab7ae3fd2451b91d506f04c73423afd90ff15c3d83eff7d0-primary.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5-group.xml b/deltarepo/acceptance_tests/repos/repo1/repodata/a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5-group.xml
new file mode 100644 (file)
index 0000000..068519c
--- /dev/null
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE comps PUBLIC "-//Red Hat, Inc.//DTD Comps info//EN" "comps.dtd">
+<comps>
+<!-- -->
+</comps>
diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/a6b171d9373992fe0039cfa75c01b31ce34abf5fb02f9d61880be8c01e7b0453-other.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo1/repodata/a6b171d9373992fe0039cfa75c01b31ce34abf5fb02f9d61880be8c01e7b0453-other.sqlite.bz2
new file mode 100644 (file)
index 0000000..f3e5062
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo1/repodata/a6b171d9373992fe0039cfa75c01b31ce34abf5fb02f9d61880be8c01e7b0453-other.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/f4a97b9186cc7cec8dd2df9f538d0debee0a380ba846ca7ae589793e9c102779-filelists.xml.gz b/deltarepo/acceptance_tests/repos/repo1/repodata/f4a97b9186cc7cec8dd2df9f538d0debee0a380ba846ca7ae589793e9c102779-filelists.xml.gz
new file mode 100644 (file)
index 0000000..89f43cc
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo1/repodata/f4a97b9186cc7cec8dd2df9f538d0debee0a380ba846ca7ae589793e9c102779-filelists.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo1/repodata/repomd.xml b/deltarepo/acceptance_tests/repos/repo1/repodata/repomd.xml
new file mode 100644 (file)
index 0000000..2350c48
--- /dev/null
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<repomd xmlns="http://linux.duke.edu/metadata/repo" xmlns:rpm="http://linux.duke.edu/metadata/rpm">
+  <revision>1st repo</revision>
+  <tags>
+    <content>A content tag</content>
+  </tags>
+  <data type="primary">
+    <checksum type="sha256">75e95cb144f9102aab7ae3fd2451b91d506f04c73423afd90ff15c3d83eff7d0</checksum>
+    <open-checksum type="sha256">76b191cdb83b2dec81c6e25708d03ff959d52802a6fe283dc295be119cfc8c49</open-checksum>
+    <location href="repodata/75e95cb144f9102aab7ae3fd2451b91d506f04c73423afd90ff15c3d83eff7d0-primary.xml.gz"/>
+    <timestamp>1383057043</timestamp>
+    <size>1418</size>
+    <open-size>4165</open-size>
+  </data>
+  <data type="filelists">
+    <checksum type="sha256">f4a97b9186cc7cec8dd2df9f538d0debee0a380ba846ca7ae589793e9c102779</checksum>
+    <open-checksum type="sha256">cf2821f72c440581cd7b2670260595223f9e2718c6ef68291c85f325ca742407</open-checksum>
+    <location href="repodata/f4a97b9186cc7cec8dd2df9f538d0debee0a380ba846ca7ae589793e9c102779-filelists.xml.gz"/>
+    <timestamp>1383057043</timestamp>
+    <size>613</size>
+    <open-size>2889</open-size>
+  </data>
+  <data type="other">
+    <checksum type="sha256">756dd17c2e5a8c624407daf511cfcbcefd4155b10502bd320f2c20590d15c4fe</checksum>
+    <open-checksum type="sha256">6703999c0475cf4663164bcfdfbba277bd99cd585fa985b8d8ec818702a73536</open-checksum>
+    <location href="repodata/756dd17c2e5a8c624407daf511cfcbcefd4155b10502bd320f2c20590d15c4fe-other.xml.gz"/>
+    <timestamp>1383057043</timestamp>
+    <size>913</size>
+    <open-size>3360</open-size>
+  </data>
+  <data type="primary_db">
+    <checksum type="sha256">06319bdfdf3cb3aae73932b1d368013ecf613f8eea101aff50f3a817cae19ffb</checksum>
+    <open-checksum type="sha256">ad065eead68d8bc2856e45e777259735289893400922b07b1ec75f2daab57762</open-checksum>
+    <location href="repodata/06319bdfdf3cb3aae73932b1d368013ecf613f8eea101aff50f3a817cae19ffb-primary.sqlite.bz2"/>
+    <timestamp>1383057043</timestamp>
+    <size>3185</size>
+    <open-size>25600</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="filelists_db">
+    <checksum type="sha256">654bfc0a6bbf9905b9095f79730e1e505d688e2c1746df7d699ab70c114fdfd4</checksum>
+    <open-checksum type="sha256">6bf71cb9b874960ed4c2fafe9cbe23319b227c3754942726995b7556083bad71</open-checksum>
+    <location href="repodata/654bfc0a6bbf9905b9095f79730e1e505d688e2c1746df7d699ab70c114fdfd4-filelists.sqlite.bz2"/>
+    <timestamp>1383057043</timestamp>
+    <size>1971</size>
+    <open-size>12288</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="other_db">
+    <checksum type="sha256">a6b171d9373992fe0039cfa75c01b31ce34abf5fb02f9d61880be8c01e7b0453</checksum>
+    <open-checksum type="sha256">37bdc67a1dd6aa2fb95ea5274a933e11e20bd67722cc3e7e4792b4006c83a089</open-checksum>
+    <location href="repodata/a6b171d9373992fe0039cfa75c01b31ce34abf5fb02f9d61880be8c01e7b0453-other.sqlite.bz2"/>
+    <timestamp>1383057043</timestamp>
+    <size>1725</size>
+    <open-size>9216</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="group">
+    <checksum type="sha256">a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5</checksum>
+    <location href="repodata/a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5-group.xml"/>
+    <timestamp>1383057043</timestamp>
+    <size>140</size>
+  </data>
+  <data type="group_gz">
+    <checksum type="sha256">46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b</checksum>
+    <open-checksum type="sha256">a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5</open-checksum>
+    <location href="repodata/46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b-group.xml.gz"/>
+    <timestamp>1383057043</timestamp>
+    <size>141</size>
+    <open-size>140</open-size>
+  </data>
+</repomd>
diff --git a/deltarepo/acceptance_tests/repos/repo2/gen.sh b/deltarepo/acceptance_tests/repos/repo2/gen.sh
new file mode 100755 (executable)
index 0000000..296e663
--- /dev/null
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+MY_DIR=`dirname $0`
+
+if [[ -z "$CREATEREPO" ]]
+then
+    CREATEREPO="createrepo_c"
+fi
+
+pushd "$MY_DIR"
+$CREATEREPO --revision foorevisionbar --distro cpe:/o:fedoraproject:fedora:17,foo --repo abc --content plm .
+popd
diff --git a/deltarepo/acceptance_tests/repos/repo2/imsettings-0.108.1-2.fc14.i686.rpm b/deltarepo/acceptance_tests/repos/repo2/imsettings-0.108.1-2.fc14.i686.rpm
new file mode 100644 (file)
index 0000000..648d8e6
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo2/imsettings-0.108.1-2.fc14.i686.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo2/iok-1.3.11-1.fc14.i686.rpm b/deltarepo/acceptance_tests/repos/repo2/iok-1.3.11-1.fc14.i686.rpm
new file mode 100644 (file)
index 0000000..7450fee
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo2/iok-1.3.11-1.fc14.i686.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo2/repodata/1a9e05b75031a68bf57dc54bfd25b71cf17e9132d6ea57e956a5fa55a522bd4c-primary.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo2/repodata/1a9e05b75031a68bf57dc54bfd25b71cf17e9132d6ea57e956a5fa55a522bd4c-primary.sqlite.bz2
new file mode 100644 (file)
index 0000000..6673fb6
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo2/repodata/1a9e05b75031a68bf57dc54bfd25b71cf17e9132d6ea57e956a5fa55a522bd4c-primary.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo2/repodata/7d9bb407893e18cafdfe6e572132be417b8cc71438c181766ceb0bf746bb4110-primary.xml.gz b/deltarepo/acceptance_tests/repos/repo2/repodata/7d9bb407893e18cafdfe6e572132be417b8cc71438c181766ceb0bf746bb4110-primary.xml.gz
new file mode 100644 (file)
index 0000000..55755be
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo2/repodata/7d9bb407893e18cafdfe6e572132be417b8cc71438c181766ceb0bf746bb4110-primary.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo2/repodata/a0a5b63949d221cb6dd314d5138f1d4bc1e57e90d64c087130ced219b9eac025-filelists.xml.gz b/deltarepo/acceptance_tests/repos/repo2/repodata/a0a5b63949d221cb6dd314d5138f1d4bc1e57e90d64c087130ced219b9eac025-filelists.xml.gz
new file mode 100644 (file)
index 0000000..13c2d94
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo2/repodata/a0a5b63949d221cb6dd314d5138f1d4bc1e57e90d64c087130ced219b9eac025-filelists.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo2/repodata/be2d1bf005049f77aa0ceaa253c58a89bb542438c7014ee3d18a11b52fbf1930-other.xml.gz b/deltarepo/acceptance_tests/repos/repo2/repodata/be2d1bf005049f77aa0ceaa253c58a89bb542438c7014ee3d18a11b52fbf1930-other.xml.gz
new file mode 100644 (file)
index 0000000..92f5063
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo2/repodata/be2d1bf005049f77aa0ceaa253c58a89bb542438c7014ee3d18a11b52fbf1930-other.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo2/repodata/c7efed490fec0b77fcbccd0b51063c8fda3f2d2de173199ef8f8bcf1bf98bc18-other.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo2/repodata/c7efed490fec0b77fcbccd0b51063c8fda3f2d2de173199ef8f8bcf1bf98bc18-other.sqlite.bz2
new file mode 100644 (file)
index 0000000..0f7adc0
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo2/repodata/c7efed490fec0b77fcbccd0b51063c8fda3f2d2de173199ef8f8bcf1bf98bc18-other.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo2/repodata/e2bc196c1378738a0be8684f797dc80f20e50384493a15c8a1a84c68c4fd5066-filelists.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo2/repodata/e2bc196c1378738a0be8684f797dc80f20e50384493a15c8a1a84c68c4fd5066-filelists.sqlite.bz2
new file mode 100644 (file)
index 0000000..523c254
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo2/repodata/e2bc196c1378738a0be8684f797dc80f20e50384493a15c8a1a84c68c4fd5066-filelists.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo2/repodata/repomd.xml b/deltarepo/acceptance_tests/repos/repo2/repodata/repomd.xml
new file mode 100644 (file)
index 0000000..d449da5
--- /dev/null
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<repomd xmlns="http://linux.duke.edu/metadata/repo" xmlns:rpm="http://linux.duke.edu/metadata/rpm">
+  <revision>foorevisionbar</revision>
+  <tags>
+    <content>plm</content>
+    <repo>abc</repo>
+    <distro cpeid="cpe:/o:fedoraproject:fedora:17">foo</distro>
+  </tags>
+  <data type="primary">
+    <checksum type="sha256">7d9bb407893e18cafdfe6e572132be417b8cc71438c181766ceb0bf746bb4110</checksum>
+    <open-checksum type="sha256">b2646d203e7fc280d17628678bbb63dfe413e1e6db5998c2f0c632571e026a51</open-checksum>
+    <location href="repodata/7d9bb407893e18cafdfe6e572132be417b8cc71438c181766ceb0bf746bb4110-primary.xml.gz"/>
+    <timestamp>1383040596</timestamp>
+    <size>1695</size>
+    <open-size>6931</open-size>
+  </data>
+  <data type="filelists">
+    <checksum type="sha256">a0a5b63949d221cb6dd314d5138f1d4bc1e57e90d64c087130ced219b9eac025</checksum>
+    <open-checksum type="sha256">e6ed01b593b8563f3da3cf7bc72d1e3534e0af086cc24f0781386a1927836bdf</open-checksum>
+    <location href="repodata/a0a5b63949d221cb6dd314d5138f1d4bc1e57e90d64c087130ced219b9eac025-filelists.xml.gz"/>
+    <timestamp>1383040596</timestamp>
+    <size>1106</size>
+    <open-size>8871</open-size>
+  </data>
+  <data type="other">
+    <checksum type="sha256">be2d1bf005049f77aa0ceaa253c58a89bb542438c7014ee3d18a11b52fbf1930</checksum>
+    <open-checksum type="sha256">c4ab8ba190e650cab1c83bc55211868029b2958a6decdc549ea35024caadd47a</open-checksum>
+    <location href="repodata/be2d1bf005049f77aa0ceaa253c58a89bb542438c7014ee3d18a11b52fbf1930-other.xml.gz"/>
+    <timestamp>1383040596</timestamp>
+    <size>1160</size>
+    <open-size>3723</open-size>
+  </data>
+  <data type="primary_db">
+    <checksum type="sha256">1a9e05b75031a68bf57dc54bfd25b71cf17e9132d6ea57e956a5fa55a522bd4c</checksum>
+    <open-checksum type="sha256">8f26893f5bc23aeb40de4e33ef57a44a4cc092245743ecaa315f44d85ee994b3</open-checksum>
+    <location href="repodata/1a9e05b75031a68bf57dc54bfd25b71cf17e9132d6ea57e956a5fa55a522bd4c-primary.sqlite.bz2"/>
+    <timestamp>1383040597</timestamp>
+    <size>4486</size>
+    <open-size>28672</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="filelists_db">
+    <checksum type="sha256">e2bc196c1378738a0be8684f797dc80f20e50384493a15c8a1a84c68c4fd5066</checksum>
+    <open-checksum type="sha256">d8f597945ad78525231c4d594a32cf4a789ea2603813818cf2b4426cbddc9185</open-checksum>
+    <location href="repodata/e2bc196c1378738a0be8684f797dc80f20e50384493a15c8a1a84c68c4fd5066-filelists.sqlite.bz2"/>
+    <timestamp>1383040597</timestamp>
+    <size>3711</size>
+    <open-size>19456</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="other_db">
+    <checksum type="sha256">c7efed490fec0b77fcbccd0b51063c8fda3f2d2de173199ef8f8bcf1bf98bc18</checksum>
+    <open-checksum type="sha256">33f92112726fc599da9941d8c8104a2b0ef84639b955b86bdd0c014876abf223</open-checksum>
+    <location href="repodata/c7efed490fec0b77fcbccd0b51063c8fda3f2d2de173199ef8f8bcf1bf98bc18-other.sqlite.bz2"/>
+    <timestamp>1383040597</timestamp>
+    <size>2011</size>
+    <open-size>9216</open-size>
+    <database_version>10</database_version>
+  </data>
+</repomd>
diff --git a/deltarepo/acceptance_tests/repos/repo3/Archer-3.4.5-6.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3/Archer-3.4.5-6.x86_64.rpm
new file mode 100644 (file)
index 0000000..6067c88
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/Archer-3.4.5-6.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/balicek-utf8-1.1.1-1.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3/balicek-utf8-1.1.1-1.x86_64.rpm
new file mode 100644 (file)
index 0000000..68c4d0e
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/balicek-utf8-1.1.1-1.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/comps.xml b/deltarepo/acceptance_tests/repos/repo3/comps.xml
new file mode 100644 (file)
index 0000000..068519c
--- /dev/null
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE comps PUBLIC "-//Red Hat, Inc.//DTD Comps info//EN" "comps.dtd">
+<comps>
+<!-- -->
+</comps>
diff --git a/deltarepo/acceptance_tests/repos/repo3/empty-0-0.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3/empty-0-0.x86_64.rpm
new file mode 100644 (file)
index 0000000..cb324ae
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/empty-0-0.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/fake_bash-1.1.1-1.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3/fake_bash-1.1.1-1.x86_64.rpm
new file mode 100644 (file)
index 0000000..ddab045
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/fake_bash-1.1.1-1.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/foobar b/deltarepo/acceptance_tests/repos/repo3/foobar
new file mode 100644 (file)
index 0000000..76fc659
--- /dev/null
@@ -0,0 +1 @@
+a content
\ No newline at end of file
diff --git a/deltarepo/acceptance_tests/repos/repo3/gen.sh b/deltarepo/acceptance_tests/repos/repo3/gen.sh
new file mode 100755 (executable)
index 0000000..3a81863
--- /dev/null
@@ -0,0 +1,18 @@
+#!/bin/bash
+
+MY_DIR=`dirname $0`
+
+if [[ -z "$CREATEREPO" ]]
+then
+    CREATEREPO="createrepo_c"
+fi
+
+if [[ -z "$MODIFYREPO" ]]
+then
+    CREATEREPO="modifyrepo_c"
+fi
+
+pushd "$MY_DIR"
+$CREATEREPO --groupfile comps.xml --revision "3th repo" --content "Content tag 123456" .
+$MODIFYREPO foobar repodata/
+popd
diff --git a/deltarepo/acceptance_tests/repos/repo3/iok-1.3.11-1.fc14.i686.rpm b/deltarepo/acceptance_tests/repos/repo3/iok-1.3.11-1.fc14.i686.rpm
new file mode 100644 (file)
index 0000000..7450fee
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/iok-1.3.11-1.fc14.i686.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/01d96c6bd24951246d844e1f1dffb7953b5712087be489186c2e235566dd791e-filelists.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo3/repodata/01d96c6bd24951246d844e1f1dffb7953b5712087be489186c2e235566dd791e-filelists.sqlite.bz2
new file mode 100644 (file)
index 0000000..587befd
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/repodata/01d96c6bd24951246d844e1f1dffb7953b5712087be489186c2e235566dd791e-filelists.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/06d8204d74de57ed4050a72280d25d2e73dabf8298f94e415d12d3b847682752-foobar.gz b/deltarepo/acceptance_tests/repos/repo3/repodata/06d8204d74de57ed4050a72280d25d2e73dabf8298f94e415d12d3b847682752-foobar.gz
new file mode 100644 (file)
index 0000000..f2aeb44
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/repodata/06d8204d74de57ed4050a72280d25d2e73dabf8298f94e415d12d3b847682752-foobar.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/07be04d07513fc6e9e6aa4e74c2e7c03362ecdadc5f2e6f30a5dd595d500148a-primary.xml.gz b/deltarepo/acceptance_tests/repos/repo3/repodata/07be04d07513fc6e9e6aa4e74c2e7c03362ecdadc5f2e6f30a5dd595d500148a-primary.xml.gz
new file mode 100644 (file)
index 0000000..5362945
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/repodata/07be04d07513fc6e9e6aa4e74c2e7c03362ecdadc5f2e6f30a5dd595d500148a-primary.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b-comps.xml.gz b/deltarepo/acceptance_tests/repos/repo3/repodata/46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b-comps.xml.gz
new file mode 100644 (file)
index 0000000..6a703ab
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/repodata/46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b-comps.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/988108bf9074178942535ec19cbb873de3b28e46f251c08a00aba5e10e1592c0-filelists.xml.gz b/deltarepo/acceptance_tests/repos/repo3/repodata/988108bf9074178942535ec19cbb873de3b28e46f251c08a00aba5e10e1592c0-filelists.xml.gz
new file mode 100644 (file)
index 0000000..30e089b
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/repodata/988108bf9074178942535ec19cbb873de3b28e46f251c08a00aba5e10e1592c0-filelists.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5-comps.xml b/deltarepo/acceptance_tests/repos/repo3/repodata/a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5-comps.xml
new file mode 100644 (file)
index 0000000..068519c
--- /dev/null
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE comps PUBLIC "-//Red Hat, Inc.//DTD Comps info//EN" "comps.dtd">
+<comps>
+<!-- -->
+</comps>
diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/b3fb18d3c8cbbab1578ddcdecacb2080f0dff66348cc4a0f40a07340f49a580c-other.xml.gz b/deltarepo/acceptance_tests/repos/repo3/repodata/b3fb18d3c8cbbab1578ddcdecacb2080f0dff66348cc4a0f40a07340f49a580c-other.xml.gz
new file mode 100644 (file)
index 0000000..ef4e1da
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/repodata/b3fb18d3c8cbbab1578ddcdecacb2080f0dff66348cc4a0f40a07340f49a580c-other.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/b8e7fd92e4596d9f2c78784c81619a278ae0c227edbdbdbb528a468ed7e74fb9-primary.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo3/repodata/b8e7fd92e4596d9f2c78784c81619a278ae0c227edbdbdbb528a468ed7e74fb9-primary.sqlite.bz2
new file mode 100644 (file)
index 0000000..c2a6666
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/repodata/b8e7fd92e4596d9f2c78784c81619a278ae0c227edbdbdbb528a468ed7e74fb9-primary.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/d2685baff8b678d7c670c1af6896e0988708e9b2381de429ad2e0b6f698ae926-other.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo3/repodata/d2685baff8b678d7c670c1af6896e0988708e9b2381de429ad2e0b6f698ae926-other.sqlite.bz2
new file mode 100644 (file)
index 0000000..d73f36c
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/repodata/d2685baff8b678d7c670c1af6896e0988708e9b2381de429ad2e0b6f698ae926-other.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo3/repodata/repomd.xml b/deltarepo/acceptance_tests/repos/repo3/repodata/repomd.xml
new file mode 100644 (file)
index 0000000..b2db5c6
--- /dev/null
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<repomd xmlns="http://linux.duke.edu/metadata/repo" xmlns:rpm="http://linux.duke.edu/metadata/rpm">
+  <revision>3th repo</revision>
+  <tags>
+    <content>Content tag 123456</content>
+  </tags>
+  <data type="primary">
+    <checksum type="sha256">07be04d07513fc6e9e6aa4e74c2e7c03362ecdadc5f2e6f30a5dd595d500148a</checksum>
+    <open-checksum type="sha256">dc983d4558352b969391c0456f24a262eebd4465e5f01e82251e9b4272852fd8</open-checksum>
+    <location href="repodata/07be04d07513fc6e9e6aa4e74c2e7c03362ecdadc5f2e6f30a5dd595d500148a-primary.xml.gz"/>
+    <timestamp>1383056927</timestamp>
+    <size>2351</size>
+    <open-size>10689</open-size>
+  </data>
+  <data type="filelists">
+    <checksum type="sha256">988108bf9074178942535ec19cbb873de3b28e46f251c08a00aba5e10e1592c0</checksum>
+    <open-checksum type="sha256">e9fd629d69dbe581d218893f4d939d5a6d8c9ee1fffc863ae676ec6b6297b1f3</open-checksum>
+    <location href="repodata/988108bf9074178942535ec19cbb873de3b28e46f251c08a00aba5e10e1592c0-filelists.xml.gz"/>
+    <timestamp>1383056927</timestamp>
+    <size>884</size>
+    <open-size>3751</open-size>
+  </data>
+  <data type="other">
+    <checksum type="sha256">b3fb18d3c8cbbab1578ddcdecacb2080f0dff66348cc4a0f40a07340f49a580c</checksum>
+    <open-checksum type="sha256">2225412f625d182d3a0d3c9fb6b5e77e731dc958c3ad36751b649c79b7206562</open-checksum>
+    <location href="repodata/b3fb18d3c8cbbab1578ddcdecacb2080f0dff66348cc4a0f40a07340f49a580c-other.xml.gz"/>
+    <timestamp>1383056927</timestamp>
+    <size>1116</size>
+    <open-size>3504</open-size>
+  </data>
+  <data type="primary_db">
+    <checksum type="sha256">b8e7fd92e4596d9f2c78784c81619a278ae0c227edbdbdbb528a468ed7e74fb9</checksum>
+    <open-checksum type="sha256">074b4c74f0484ba394930f560af995543dcd9b96e273b0167f7125c393537510</open-checksum>
+    <location href="repodata/b8e7fd92e4596d9f2c78784c81619a278ae0c227edbdbdbb528a468ed7e74fb9-primary.sqlite.bz2"/>
+    <timestamp>1383056927</timestamp>
+    <size>4725</size>
+    <open-size>26624</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="filelists_db">
+    <checksum type="sha256">01d96c6bd24951246d844e1f1dffb7953b5712087be489186c2e235566dd791e</checksum>
+    <open-checksum type="sha256">147bafe10f7fbe491e76e0a86a9410e328587f9aad57eea759599cdb18b6891c</open-checksum>
+    <location href="repodata/01d96c6bd24951246d844e1f1dffb7953b5712087be489186c2e235566dd791e-filelists.sqlite.bz2"/>
+    <timestamp>1383056927</timestamp>
+    <size>2381</size>
+    <open-size>12288</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="other_db">
+    <checksum type="sha256">d2685baff8b678d7c670c1af6896e0988708e9b2381de429ad2e0b6f698ae926</checksum>
+    <open-checksum type="sha256">b2c74b06efc53227f760225446690c9b791ca7b760275a23ca958b2203059c17</open-checksum>
+    <location href="repodata/d2685baff8b678d7c670c1af6896e0988708e9b2381de429ad2e0b6f698ae926-other.sqlite.bz2"/>
+    <timestamp>1383056927</timestamp>
+    <size>1932</size>
+    <open-size>8192</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="foobar">
+    <checksum type="sha256">06d8204d74de57ed4050a72280d25d2e73dabf8298f94e415d12d3b847682752</checksum>
+    <open-checksum type="sha256">d2d2acf640179223bf9e1eb43c5fbf854c4e50ffb6733bc3a9279d3ff7de9be1</open-checksum>
+    <location href="repodata/06d8204d74de57ed4050a72280d25d2e73dabf8298f94e415d12d3b847682752-foobar.gz"/>
+    <timestamp>1383056927</timestamp>
+    <size>29</size>
+    <open-size>9</open-size>
+  </data>
+  <data type="group">
+    <checksum type="sha256">a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5</checksum>
+    <location href="repodata/a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5-comps.xml"/>
+    <timestamp>1383056927</timestamp>
+    <size>140</size>
+    <open-size>0</open-size>
+  </data>
+  <data type="group_gz">
+    <checksum type="sha256">46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b</checksum>
+    <open-checksum type="sha256">a5e176f8963047438fee997c4cad6a5388ef85d0b22d72a48712cc91bf2821c5</open-checksum>
+    <location href="repodata/46b296e6f4193dcf5cdc11f10be8472a7085c6d45f05a09da5ef4e4c80c8828b-comps.xml.gz"/>
+    <timestamp>1383056927</timestamp>
+    <size>141</size>
+    <open-size>140</open-size>
+  </data>
+</repomd>
diff --git a/deltarepo/acceptance_tests/repos/repo3/super_kernel-6.0.1-2.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3/super_kernel-6.0.1-2.x86_64.rpm
new file mode 100644 (file)
index 0000000..b606e16
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3/super_kernel-6.0.1-2.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/Archer-3.4.5-6.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3_md5/Archer-3.4.5-6.x86_64.rpm
new file mode 100644 (file)
index 0000000..6067c88
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/Archer-3.4.5-6.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/balicek-iso88591-1.1.1-1.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3_md5/balicek-iso88591-1.1.1-1.x86_64.rpm
new file mode 100644 (file)
index 0000000..1006926
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/balicek-iso88591-1.1.1-1.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/balicek-iso88592-1.1.1-1.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3_md5/balicek-iso88592-1.1.1-1.x86_64.rpm
new file mode 100644 (file)
index 0000000..4b20abd
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/balicek-iso88592-1.1.1-1.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/balicek-utf8-1.1.1-1.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3_md5/balicek-utf8-1.1.1-1.x86_64.rpm
new file mode 100644 (file)
index 0000000..68c4d0e
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/balicek-utf8-1.1.1-1.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/comps.xml b/deltarepo/acceptance_tests/repos/repo3_md5/comps.xml
new file mode 100644 (file)
index 0000000..068519c
--- /dev/null
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE comps PUBLIC "-//Red Hat, Inc.//DTD Comps info//EN" "comps.dtd">
+<comps>
+<!-- -->
+</comps>
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/empty-0-0.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3_md5/empty-0-0.x86_64.rpm
new file mode 100644 (file)
index 0000000..cb324ae
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/empty-0-0.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/fake_bash-1.1.1-1.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3_md5/fake_bash-1.1.1-1.x86_64.rpm
new file mode 100644 (file)
index 0000000..ddab045
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/fake_bash-1.1.1-1.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/gen.sh b/deltarepo/acceptance_tests/repos/repo3_md5/gen.sh
new file mode 100755 (executable)
index 0000000..810c350
--- /dev/null
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+MY_DIR=`dirname $0`
+
+if [[ -z "$CREATEREPO" ]]
+then
+    CREATEREPO="createrepo_c"
+fi
+
+if [[ -z "$MODIFYREPO" ]]
+then
+    CREATEREPO="modifyrepo_c"
+fi
+
+pushd "$MY_DIR"
+$CREATEREPO --checksum "md5" --groupfile comps.xml --revision "3th repo - md5" --content "111" --content "222" --repo "aaa" --repo "bbb" --repo "ccc" --distro="one,foo" --distro="two:bar" .
+popd
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/iok-1.3.11-1.fc14.i686.rpm b/deltarepo/acceptance_tests/repos/repo3_md5/iok-1.3.11-1.fc14.i686.rpm
new file mode 100644 (file)
index 0000000..7450fee
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/iok-1.3.11-1.fc14.i686.rpm differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/219e3abab80cf0d6f0f086e2cb921ebd-comps.xml.gz b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/219e3abab80cf0d6f0f086e2cb921ebd-comps.xml.gz
new file mode 100644 (file)
index 0000000..f0ab5f6
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/219e3abab80cf0d6f0f086e2cb921ebd-comps.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/2cf05ca6ca26bfe4aea8c88c7980a7b0-filelists.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/2cf05ca6ca26bfe4aea8c88c7980a7b0-filelists.sqlite.bz2
new file mode 100644 (file)
index 0000000..460e32f
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/2cf05ca6ca26bfe4aea8c88c7980a7b0-filelists.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/6f167684fc6301b3cdf8c2f0d1ededad-primary.xml.gz b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/6f167684fc6301b3cdf8c2f0d1ededad-primary.xml.gz
new file mode 100644 (file)
index 0000000..d523242
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/6f167684fc6301b3cdf8c2f0d1ededad-primary.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/71e71de922ccdaf23c1cb02d8b234c91-comps.xml b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/71e71de922ccdaf23c1cb02d8b234c91-comps.xml
new file mode 100644 (file)
index 0000000..068519c
--- /dev/null
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE comps PUBLIC "-//Red Hat, Inc.//DTD Comps info//EN" "comps.dtd">
+<comps>
+<!-- -->
+</comps>
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/73538b4dd5d121108f8b98f72672e8f7-other.xml.gz b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/73538b4dd5d121108f8b98f72672e8f7-other.xml.gz
new file mode 100644 (file)
index 0000000..b55b22f
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/73538b4dd5d121108f8b98f72672e8f7-other.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/802912716f5820b736afc409b831436e-primary.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/802912716f5820b736afc409b831436e-primary.sqlite.bz2
new file mode 100644 (file)
index 0000000..d9fe01c
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/802912716f5820b736afc409b831436e-primary.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/959970da257ec7696a0bffdc52752d5f-comps.xml.gz b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/959970da257ec7696a0bffdc52752d5f-comps.xml.gz
new file mode 100644 (file)
index 0000000..6a703ab
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/959970da257ec7696a0bffdc52752d5f-comps.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/d240d93e678b4fcb30259335d3af15b7-filelists.xml.gz b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/d240d93e678b4fcb30259335d3af15b7-filelists.xml.gz
new file mode 100644 (file)
index 0000000..675d900
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/d240d93e678b4fcb30259335d3af15b7-filelists.xml.gz differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/de34683b2f4d0d987b4f6e0b09a9c87f-other.sqlite.bz2 b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/de34683b2f4d0d987b4f6e0b09a9c87f-other.sqlite.bz2
new file mode 100644 (file)
index 0000000..d2899d6
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/de34683b2f4d0d987b4f6e0b09a9c87f-other.sqlite.bz2 differ
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/repodata/repomd.xml b/deltarepo/acceptance_tests/repos/repo3_md5/repodata/repomd.xml
new file mode 100644 (file)
index 0000000..cdf3cdf
--- /dev/null
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<repomd xmlns="http://linux.duke.edu/metadata/repo" xmlns:rpm="http://linux.duke.edu/metadata/rpm">
+  <revision>3th repo - md5</revision>
+  <tags>
+    <content>111</content>
+    <content>222</content>
+    <repo>aaa</repo>
+    <repo>bbb</repo>
+    <repo>ccc</repo>
+    <distro cpeid="one">foo</distro>
+    <distro>two:bar</distro>
+  </tags>
+  <data type="primary">
+    <checksum type="md5">6f167684fc6301b3cdf8c2f0d1ededad</checksum>
+    <open-checksum type="md5">9aa8568cbe4bcdffb59598ce184002ca</open-checksum>
+    <location href="repodata/6f167684fc6301b3cdf8c2f0d1ededad-primary.xml.gz"/>
+    <timestamp>1383056971</timestamp>
+    <size>2459</size>
+    <open-size>12924</open-size>
+  </data>
+  <data type="filelists">
+    <checksum type="md5">d240d93e678b4fcb30259335d3af15b7</checksum>
+    <open-checksum type="md5">f4ae5bf585d336c7ca7e7a3a1e8d2366</open-checksum>
+    <location href="repodata/d240d93e678b4fcb30259335d3af15b7-filelists.xml.gz"/>
+    <timestamp>1383056971</timestamp>
+    <size>819</size>
+    <open-size>3845</open-size>
+  </data>
+  <data type="other">
+    <checksum type="md5">73538b4dd5d121108f8b98f72672e8f7</checksum>
+    <open-checksum type="md5">01e62d3841a0e9ef6b5dec01aa40b6cc</open-checksum>
+    <location href="repodata/73538b4dd5d121108f8b98f72672e8f7-other.xml.gz"/>
+    <timestamp>1383056971</timestamp>
+    <size>1099</size>
+    <open-size>3909</open-size>
+  </data>
+  <data type="primary_db">
+    <checksum type="md5">802912716f5820b736afc409b831436e</checksum>
+    <open-checksum type="md5">6c9edb29222bdd23bb6616651b529eb0</open-checksum>
+    <location href="repodata/802912716f5820b736afc409b831436e-primary.sqlite.bz2"/>
+    <timestamp>1383056971</timestamp>
+    <size>4978</size>
+    <open-size>26624</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="filelists_db">
+    <checksum type="md5">2cf05ca6ca26bfe4aea8c88c7980a7b0</checksum>
+    <open-checksum type="md5">189d7d00166efd5ac3b5a16c8304b53f</open-checksum>
+    <location href="repodata/2cf05ca6ca26bfe4aea8c88c7980a7b0-filelists.sqlite.bz2"/>
+    <timestamp>1383056971</timestamp>
+    <size>2273</size>
+    <open-size>12288</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="other_db">
+    <checksum type="md5">de34683b2f4d0d987b4f6e0b09a9c87f</checksum>
+    <open-checksum type="md5">fef1771fb9c6b9686b7f830937c753d2</open-checksum>
+    <location href="repodata/de34683b2f4d0d987b4f6e0b09a9c87f-other.sqlite.bz2"/>
+    <timestamp>1383056971</timestamp>
+    <size>1924</size>
+    <open-size>8192</open-size>
+    <database_version>10</database_version>
+  </data>
+  <data type="group">
+    <checksum type="md5">71e71de922ccdaf23c1cb02d8b234c91</checksum>
+    <location href="repodata/71e71de922ccdaf23c1cb02d8b234c91-comps.xml"/>
+    <timestamp>1383056971</timestamp>
+    <size>140</size>
+  </data>
+  <data type="group_gz">
+    <checksum type="md5">959970da257ec7696a0bffdc52752d5f</checksum>
+    <open-checksum type="md5">71e71de922ccdaf23c1cb02d8b234c91</open-checksum>
+    <location href="repodata/959970da257ec7696a0bffdc52752d5f-comps.xml.gz"/>
+    <timestamp>1383056971</timestamp>
+    <size>141</size>
+    <open-size>140</open-size>
+  </data>
+</repomd>
diff --git a/deltarepo/acceptance_tests/repos/repo3_md5/super_kernel-6.0.1-2.x86_64.rpm b/deltarepo/acceptance_tests/repos/repo3_md5/super_kernel-6.0.1-2.x86_64.rpm
new file mode 100644 (file)
index 0000000..b606e16
Binary files /dev/null and b/deltarepo/acceptance_tests/repos/repo3_md5/super_kernel-6.0.1-2.x86_64.rpm differ
diff --git a/deltarepo/acceptance_tests/test.sh b/deltarepo/acceptance_tests/test.sh
new file mode 100755 (executable)
index 0000000..26525fe
--- /dev/null
@@ -0,0 +1,75 @@
+#!/bin/bash
+
+DELTAREPO="../deltarepo.py"
+
+MY_DIR=`dirname $0`
+
+pushd $MY_DIR > /dev/null
+
+# Prepare outdir
+
+DATETIME=`date +"%Y%m%d-%H%M%S"`
+OUTDIR_TEMPLATE="deltarepo-test-$DATETIME-XXX"
+TEST_OUTDIR=`mktemp -d "$OUTDIR_TEMPLATE"`
+
+# Repos paths
+
+REPO1="repos/repo1"
+REPO2="repos/repo2"
+REPO3="repos/repo3"
+REPO3_MD5="repos/repo3_md5"
+
+# Helper functions
+
+function testcase_outdir {
+    mktemp -d "$TEST_OUTDIR/testcase-$1-XXX"
+}
+
+function compare_repos {
+    # Arguments are: repo1 repo2
+
+    echo "Comparing: $1/repodata $2/repodata"
+    echo
+
+    diff -r $1/repodata $2/repodata \
+        -I "<timestamp>[0-9]*</timestamp>" \
+        -I "<repoid .*>.*</repoid>"
+
+    return $?
+}
+
+# Test cases
+
+TESTCASEID=0
+
+function testcase01 {
+    # Arguments are: REPO_old REPO_new
+
+    TCNAME="$TESTCASEID: $FUNCNAME $1 $2"
+    TCDIR=$(testcase_outdir "$TESTCASEID-$FUNCNAME")
+
+    TESTCASEID=$[$TESTCASEID+1]
+
+    echo "==============================================="
+    echo "$TCNAME ($TCDIR)";
+    echo "==============================================="
+
+    DELTADIR="$TCDIR/delta"
+    FINALDIR="$TCDIR/final"
+    mkdir $DELTADIR
+    mkdir $FINALDIR
+
+    $DELTAREPO -o $DELTADIR $1 $2
+    $DELTAREPO -a -o $FINALDIR $1 $DELTADIR
+
+    compare_repos $2 $FINALDIR
+}
+
+testcase01 $REPO1 $REPO2
+testcase01 $REPO1 $REPO3
+testcase01 $REPO2 $REPO1
+testcase01 $REPO2 $REPO3
+testcase01 $REPO3 $REPO1
+testcase01 $REPO3 $REPO2
+
+popd > /dev/null