{-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE NoImplicitPrelude #-} -- : out example module Biz.Bild.Example where -- Both internal and external language dependencies are detected automatically -- by bild, for example here we import 'Crypto.Saltine' and list 'saltine' in -- 'Deps/Haskell.nix' to indicate that this is the package we want made -- available to bild, which will index the external package and record its -- modules for lookup. import Alpha import qualified Biz.Cli as Cli import qualified Biz.Test as Test import qualified Crypto.Saltine as Saltine import qualified Crypto.Saltine.Core.SecretBox as Saltine main :: IO () main = Cli.main <| Cli.Plan help move test pure move :: Cli.Arguments -> IO () move _ = putStrLn "Hello world" test :: Test.Tree test = Test.group "Biz.Bild.Example" [ Test.unit "can use saltine package" <| do Saltine.sodiumInit k <- Saltine.newKey n <- Saltine.newNonce let msg = "foobar" let encryptedMsg = Saltine.secretbox k n <| str "foobar" Just msg Test.@=? str