Popularity
1.1
Stable
Activity
0.0
Stable
0
1
0

Monthly Downloads: 14
Programming language: Haskell
License: LicenseRef-GPL
Tags: Testing     Test    
Latest version: v0.3.0

testCom alternatives and similar packages

Based on the "test" category.
Alternatively, view testCom alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of testCom or a related project?

Add another 'test' Package

README

testCom

How to use it

Write your tests

Above a function to test, write your tests like this:

--[1 2] [3]
--O[add 1 2] [3]
--S[x@Int y@Int] [x@ + y@] [10]
add :: Int -> Int -> Int
add x y = x+y

Syntax

  • Without any prefix: [args For The Function] [ExpectedResult]
  • With a O (Override) prefix: [custom Function To Test] [ExpectedResult]
  • With a S (Specification) prefix: [args Involving variable@Type] [ExpectedResult Maybe Involving variable@] [numberOfTestToDo] (for now only basic types are supported: Int Char and Bool). variable@Type MUST be surrounded by spaces.

Run them

For example

{-# LANGUAGE TemplateHaskell #-}

import Language.Haskell.TH
import Language.Haskell.TH.Syntax
import System.Exit

$(makeAllTestsHere)
$(makeAllTests "some/Path/File.hs")

-- Tests
main :: IO ()
main = do
  let (str,res) = _TEST_HERE
  let (str',res') = _TEST_some_Path_File --The main TEST functions is named with the path with backslash replaced by underscore, and without the file extension.
  putStrLn str
  putStrLn str'
  if res && res' then exitSuccess else exitFailure