5c9079a410
Manually merging: - README.md: I added the description from universe/README.md into the heading of dotfiles/README.md. - .envrc: dotfiles/.envrc was a superset of universe/.envrc - .gitignore: Adding some of the ignored patterns from universe/.gitignore to dotfiles/.gitignore Everything else here should be a simple rename.
39 lines
1.3 KiB
Haskell
39 lines
1.3 KiB
Haskell
module FTest where
|
|
--------------------------------------------------------------------------------
|
|
import Test.Tasty
|
|
import Test.Tasty.Hedgehog
|
|
import Hedgehog
|
|
--------------------------------------------------------------------------------
|
|
import qualified Hedgehog as H
|
|
import qualified Hedgehog.Gen as Gen
|
|
import qualified Hedgehog.Range as Range
|
|
--------------------------------------------------------------------------------
|
|
import Data.List (intercalate)
|
|
import System.FilePath (pathSeparator)
|
|
--------------------------------------------------------------------------------
|
|
import F
|
|
--------------------------------------------------------------------------------
|
|
main :: IO ()
|
|
main
|
|
= defaultMain
|
|
. localOption (HedgehogTestLimit $ Just 50)
|
|
$ testGroup "f functions"
|
|
[ test_split
|
|
]
|
|
--------------------------------------------------------------------------------
|
|
test_split :: TestTree
|
|
test_split
|
|
= testGroup "split function"
|
|
[ testProperty "splits parts properly" splitSuccess
|
|
]
|
|
splitSuccess :: Property
|
|
splitSuccess = property $ do
|
|
-- separator
|
|
-- <- H.forAll
|
|
-- $ Gen.element ['/', '\\']
|
|
parts
|
|
<- H.forAll
|
|
. Gen.list (Range.linear 0 10)
|
|
$ Gen.list (Range.linear 1 10) Gen.alphaNum
|
|
let path = intercalate [pathSeparator] parts
|
|
F.split path === parts
|