getopt-generics-0.13: test/WithCli/ModifierSpec.hs
{-# LANGUAGE DeriveGeneric #-}
module WithCli.ModifierSpec where
import Test.Hspec
import Util
import WithCli
import WithCli.Modifier
spec :: Spec
spec = do
describe "insertWith" $ do
it "combines existing values with the given function" $ do
insertWith (++) (1 :: Integer) "bar" [(1, "foo")]
`shouldBe` [(1, "foobar")]
describe "getVersion" $ do
it "returns the version" $ do
let modifiers = unsafeModifiers [AddVersionFlag "1.0.0"]
getVersion modifiers `shouldBe` Just "1.0.0"
data Foo
= Foo {
bar :: String
}
deriving (Generic)
data Overlap
= Overlap {
foo :: String,
fooo :: String
}
deriving (Generic)