tasty-program: Use tasty framework to test whether a program executes correctly

[ bsd3, library, testing ] [ Propose Tags ]

This package provides a function that extends tasty testing framework with capability to test whether an external program runs successfully. This package is inspired by test-framework-program package by Adam Wick. tasty-program provides basic functionality of running a program with specified set of command line parameters, and optionally a working directory, and checking the exit code. Program's output and error streams are ignored.


[Skip to Readme]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.5, 1.1.0
Dependencies base (>=4.7 && <=5.0), deepseq, directory, filepath, process, tasty (>=0.8) [details]
License BSD-3-Clause
Copyright Jan Stolarek, 2014-2022
Author Jan Stolarek
Maintainer jan.stolarek@binarapps.com
Category Testing
Home page https://bitbucket.com/jstolarek/tasty-program
Bug tracker https://bitbucket.com/jstolarek/tasty-program/issues
Source repo head: git clone git://bitbucket.com/jstolarek/tasty-program.git
Uploaded by JanStolarek at 2023-05-17T12:44:48Z
Distributions LTSHaskell:1.1.0, NixOS:1.1.0, Stackage:1.1.0
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 4460 total (44 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2023-05-17 [all 1 reports]

Readme for tasty-program-1.1.0

[back to package description]

tasty-program

This package provides a function that extends tasty testing framework with capability to test whether an external program runs successfully. This package is inspired by test-framework-program package by Adam Wick.

tasty-program provides basic functionality of running a program with specified set of command line parameters, and optionally a working directory, and checking the exit code. Program's output and error streams are ignored.

You can download latest stable release from Hackage

Example

Given foo.hs source file:

module Foo where

foo :: Int
foo = 5

you can test whether GHC can compile it:

module Main (
  main
 ) where

import Test.Tasty
import Test.Tasty.Program

main :: IO ()
main = defaultMain $ testGroup "Compilation with GHC" $ [
    testProgram "Foo" "ghc" ["-fforce-recomp", "foo.hs"] Nothing
  ]