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

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

Warnings:

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]

Properties

Versions 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.5, 1.1.0, 1.1.0
Change log None available
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:43:27Z

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


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
  ]