summaryrefslogtreecommitdiff
path: root/test/SlackBuilder/PackageSpec.hs
diff options
context:
space:
mode:
Diffstat (limited to 'test/SlackBuilder/PackageSpec.hs')
-rw-r--r--test/SlackBuilder/PackageSpec.hs26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/SlackBuilder/PackageSpec.hs b/test/SlackBuilder/PackageSpec.hs
new file mode 100644
index 0000000..79fce72
--- /dev/null
+++ b/test/SlackBuilder/PackageSpec.hs
@@ -0,0 +1,26 @@
+{- This Source Code Form is subject to the terms of the Mozilla Public License,
+ v. 2.0. If a copy of the MPL was not distributed with this file, You can
+ obtain one at https://mozilla.org/MPL/2.0/. -}
+
+module SlackBuilder.PackageSpec
+ ( spec
+ ) where
+
+import SlackBuilder.Package
+import Test.Hspec (Spec, describe, it, shouldBe)
+import Text.URI.QQ (uri)
+
+spec :: Spec
+spec = do
+ describe "renderDownloadWithVersion" $ do
+ it "renders text as URL" $
+ let given = DownloadTemplate "https://example.com"
+ actual = renderDownloadWithVersion given "1.2"
+ expected = Just [uri|https://example.com|]
+ in actual `shouldBe` expected
+
+ it "renders the components in order" $
+ let given = DownloadTemplate "https://example.com/{version}/segment"
+ actual = renderDownloadWithVersion given "1.2"
+ expected = Just [uri|https://example.com/1.2/segment|]
+ in actual `shouldBe` expected