summaryrefslogtreecommitdiffstats
path: root/test/t2100-mkpkglists.sh
diff options
context:
space:
mode:
Diffstat (limited to 'test/t2100-mkpkglists.sh')
-rwxr-xr-xtest/t2100-mkpkglists.sh47
1 files changed, 47 insertions, 0 deletions
diff --git a/test/t2100-mkpkglists.sh b/test/t2100-mkpkglists.sh
new file mode 100755
index 00000000..a84a1b65
--- /dev/null
+++ b/test/t2100-mkpkglists.sh
@@ -0,0 +1,47 @@
+#!/bin/sh
+
+test_description='mkpkglists tests'
+
+. ./setup.sh
+
+test_expect_success 'Test package list generation with no packages.' '
+ echo "DELETE FROM Packages;" | sqlite3 aur.db &&
+ echo "DELETE FROM PackageBases;" | sqlite3 aur.db &&
+ "$MKPKGLISTS" &&
+ test $(zcat packages.gz | wc -l) -eq 1 &&
+ test $(zcat pkgbase.gz | wc -l) -eq 1
+'
+
+test_expect_success 'Test package list generation.' '
+ cat <<-EOD | sqlite3 aur.db &&
+ INSERT INTO PackageBases (ID, Name, PackagerUID, SubmittedTS, ModifiedTS) VALUES (1, "foobar", 1, 0, 0);
+ INSERT INTO PackageBases (ID, Name, PackagerUID, SubmittedTS, ModifiedTS) VALUES (2, "foobar2", 2, 0, 0);
+ INSERT INTO PackageBases (ID, Name, PackagerUID, SubmittedTS, ModifiedTS) VALUES (3, "foobar3", NULL, 0, 0);
+ INSERT INTO PackageBases (ID, Name, PackagerUID, SubmittedTS, ModifiedTS) VALUES (4, "foobar4", 1, 0, 0);
+ INSERT INTO Packages (ID, PackageBaseID, Name) VALUES (1, 1, "pkg1");
+ INSERT INTO Packages (ID, PackageBaseID, Name) VALUES (2, 1, "pkg2");
+ INSERT INTO Packages (ID, PackageBaseID, Name) VALUES (3, 1, "pkg3");
+ INSERT INTO Packages (ID, PackageBaseID, Name) VALUES (4, 2, "pkg4");
+ INSERT INTO Packages (ID, PackageBaseID, Name) VALUES (5, 3, "pkg5");
+ EOD
+ "$MKPKGLISTS" &&
+ cat <<-EOD >expected &&
+ foobar
+ foobar2
+ foobar4
+ EOD
+ gunzip pkgbase.gz &&
+ sed "/^#/d" pkgbase >actual &&
+ test_cmp actual expected &&
+ cat <<-EOD >expected &&
+ pkg1
+ pkg2
+ pkg3
+ pkg4
+ EOD
+ gunzip packages.gz &&
+ sed "/^#/d" packages >actual &&
+ test_cmp actual expected
+'
+
+test_done