summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2023-10-08 12:28:46 +0200
committerEugen Wissner <belka@caraus.de>2023-10-08 12:28:46 +0200
commit5e161c3dade570b7a1687c01647b37cfe44f1bd5 (patch)
tree50186ee9dbb479a3094385e2b0e07c146bc5d05e /tests
parentf3beee3e19e2d64c8700cf67eb6cefc345efcf41 (diff)
downloadslackbuilder-5e161c3dade570b7a1687c01647b37cfe44f1bd5.tar.gz
Support modifying reuploaded tarballs
Diffstat (limited to 'tests')
-rw-r--r--tests/SlackBuilder/InfoSpec.hs47
1 files changed, 31 insertions, 16 deletions
diff --git a/tests/SlackBuilder/InfoSpec.hs b/tests/SlackBuilder/InfoSpec.hs
index 28167b5..f908bd0 100644
--- a/tests/SlackBuilder/InfoSpec.hs
+++ b/tests/SlackBuilder/InfoSpec.hs
@@ -21,18 +21,28 @@ parseInfoFile'
parseInfoFile' = parse parseInfoFile ""
infoDownload0 :: ByteString
-infoDownload0 = "PKGNAM=\"pkgnam\"\n\
+infoDownload0 = "PRGNAM=\"pkgnam\"\n\
\VERSION=\"1.2.3\"\n\
\HOMEPAGE=\"homepage\"\n\
\DOWNLOAD=\"\"\n\
- \MD5SUM=\"\"\n"
+ \MD5SUM=\"\"\n\
+ \DOWNLOAD_x86_64=\"\"\n\
+ \MD5SUM_x86_64=\"\"\n\
+ \REQUIRES=\"\"\n\
+ \MAINTAINER=\"Z\"\n\
+ \EMAIL=\"test@example.com\"\n"
infoDownload1 :: ByteString
-infoDownload1 = "PKGNAM=\"pkgnam\"\n\
+infoDownload1 = "PRGNAM=\"pkgnam\"\n\
\VERSION=\"1.2.3\"\n\
\HOMEPAGE=\"homepage\"\n\
\DOWNLOAD=\"https://dlackware.com/download.tar.gz\"\n\
- \MD5SUM=\"0102030405060708090a0b0c0d0e0f10\"\n"
+ \MD5SUM=\"0102030405060708090a0b0c0d0e0f10\"\n\
+ \DOWNLOAD_x86_64=\"\"\n\
+ \MD5SUM_x86_64=\"\"\n\
+ \REQUIRES=\"\"\n\
+ \MAINTAINER=\"Z\"\n\
+ \EMAIL=\"test@example.com\"\n"
maybeToDoubleList :: forall a. Maybe a -> [a]
maybeToDoubleList xs = [y | x <- maybeToList xs, y <- [x, x]]
@@ -60,7 +70,7 @@ spec = do
describe "generate" $ do
it "generates an .info file without downloads" $
- let given = PackageInfo "pkgnam" "1.2.3" "homepage" [] []
+ let given = PackageInfo "pkgnam" "1.2.3" "homepage" [] [] [] [] [] "Z" "test@example.com"
in generate given `shouldBe` Text.decodeUtf8 infoDownload0
it "splits multiple downloads into multiple lines" $
@@ -69,21 +79,26 @@ spec = do
checksums' = maybeToDoubleList
$ digestFromByteString (ByteString.pack [1.. 16])
given = PackageInfo
- "pkgnam" "1.2.3" "homepage" downloads' checksums'
- expected = "PKGNAM=\"pkgnam\"\n\
+ "pkgnam" "1.2.3" "homepage" downloads' checksums' [] [] [] "Z" "test@example.com"
+ expected = "PRGNAM=\"pkgnam\"\n\
\VERSION=\"1.2.3\"\n\
\HOMEPAGE=\"homepage\"\n\
\DOWNLOAD=\"https://dlackware.com/download.tar.gz \\\n\
\ https://dlackware.com/download.tar.gz\"\n\
\MD5SUM=\"0102030405060708090a0b0c0d0e0f10 \\\n\
- \ 0102030405060708090a0b0c0d0e0f10\"\n"
+ \ 0102030405060708090a0b0c0d0e0f10\"\n\
+ \DOWNLOAD_x86_64=\"\"\n\
+ \MD5SUM_x86_64=\"\"\n\
+ \REQUIRES=\"\"\n\
+ \MAINTAINER=\"Z\"\n\
+ \EMAIL=\"test@example.com\"\n"
in generate given `shouldBe` expected
it "prints the checksum as a sequence of hexadecimal numbers" $
let downloads' = maybeToList
$ mkURI "https://dlackware.com/download.tar.gz"
given = PackageInfo
- "pkgnam" "1.2.3" "homepage" downloads' checksumSample
+ "pkgnam" "1.2.3" "homepage" downloads' checksumSample [] [] [] "Z" "test@example.com"
in generate given `shouldBe` Text.decodeUtf8 infoDownload1
describe "updateDownloadVersion" $ do
@@ -91,7 +106,7 @@ spec = do
let downloads' = maybeToList
$ mkURI "https://dlackware.com/download-1.2.3.tar.gz"
testPackage = PackageInfo
- "pkgnam" "1.2.3" "homepage" downloads' checksumSample
+ "pkgnam" "1.2.3" "homepage" downloads' checksumSample [] [] [] "Z" "test@example.com"
expected = maybeToList
$ mkURI "https://dlackware.com/download-2.3.4.tar.gz"
actual = updateDownloadVersion testPackage "2.3.4" Nothing
@@ -101,7 +116,7 @@ spec = do
let downloads' = maybeToList
$ mkURI "https://dlackware.com/1.2/download.tar.gz"
testPackage = PackageInfo
- "pkgnam" "1.2.3" "homepage" downloads' checksumSample
+ "pkgnam" "1.2.3" "homepage" downloads' checksumSample [] [] [] "Z" "test@example.com"
expected = maybeToList
$ mkURI "https://dlackware.com/2.3/download.tar.gz"
actual = updateDownloadVersion testPackage "2.3.4" Nothing
@@ -110,8 +125,8 @@ spec = do
it "updates gnome version" $
let downloads' = maybeToList
$ mkURI "https://download.gnome.org/core/3.36/3.36.0/sources/gnome-calendar-3.36.0.tar.xz"
- testPackage = PackageInfo
- "gnome-calendar" "3.36.0" "https://wiki.gnome.org/Core/Calendar" downloads' checksumSample
+ testPackage = PackageInfo "gnome-calendar" "3.36.0" "https://wiki.gnome.org/Core/Calendar"
+ downloads' checksumSample [] [] [] "Z" "test@example.com"
expected = maybeToList
$ mkURI "https://download.gnome.org/core/3.36/3.36.4/sources/gnome-calendar-3.36.2.tar.xz"
actual = updateDownloadVersion testPackage "3.36.2" $ Just "3.36.4"
@@ -121,7 +136,7 @@ spec = do
let downloads' = maybeToList
$ mkURI "https://dlackware.com/gnome-contacts-3.36.tar.xz"
testPackage = PackageInfo
- "gnome-contacts" "3.36" "homepage" downloads' checksumSample
+ "gnome-contacts" "3.36" "homepage" downloads' checksumSample [] [] [] "Z" "test@example.com"
expected = maybeToList
$ mkURI "https://dlackware.com/gnome-contacts-3.36.2.tar.xz"
actual = updateDownloadVersion testPackage "3.36.2" Nothing
@@ -132,8 +147,8 @@ spec = do
let downloads' = maybeToList
$ mkURI "https://dlackware.com/1.2/download.tar.gz"
testPackage = PackageInfo
- "pkgnam" "1.2.3" "homepage" downloads' checksumSample
+ "pkgnam" "1.2.3" "homepage" downloads' checksumSample [] [] [] "Z" "test@example.com"
expected = PackageInfo
- "pkgnam" "2.3.4" "homepage" downloads' checksumSample
+ "pkgnam" "2.3.4" "homepage" downloads' checksumSample [] [] [] "Z" "test@example.com"
given = update testPackage "2.3.4" downloads' checksumSample
in given `shouldBe` expected