summaryrefslogtreecommitdiff
path: root/tests/SlackBuilder/PackageSpec.hs
blob: 79fce72ebbcd7ffb1b05e37934e78c10188ec350 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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