1 Using Check Forms
check-expect
check-within
check-error
test
test-format
test-silence
test-execute
2 GUI Interface
3 Integrating languages with Test Engine
Version: 4.2.1

Test Support

Kathryn Gray

    1 Using Check Forms

    2 GUI Interface

    3 Integrating languages with Test Engine

1 Using Check Forms

 (require test-engine/scheme-tests)

This module provides test forms for use in Scheme programs, as well as parameters to configure the behavior of test reports.

Each check form may only occur at the top-level or within the definitions of a local declaration; results are collected and reported by the test function.

(check-expect test expected) → void?
  test : any/c
  expected : any/c
Accepts two value-producing expressions and structurally compares the resulting values.

It is an error to produce a function value or an inexact number.

(check-within test expected delta) → void?
  test : any/c
  expected : any/c
  delta : number?
Like check-expect, but with an extra expression that produces a number delta. Every number in the first expression must be within delta of the cooresponding number in the second expression.

It is an error to produce a function value.

(check-error test msg) → void?
  test : any/c
  msg : string?
Checks that evaluating the first expression signals an error, where the error message matches the string.

(test) → void?
Runs all of the tests specified by check forms in the current module and reports the results. When using the gui module, the results are provided in a separate window, otherwise the results are printed to the current output port.

(test-format) → (any/c . -> . string?)
(test-format format) → void?
  format : (any/c . -> . string?)
A parameter that stores the formatting function for the values tested by the check forms.

(test-silence) → boolean?
(test-silence silence?) → void?
  silence? : any/c
A parameter that stores a boolean, defaults to #f, that can be used to suppress the printed summary from test.

(test-execute) → boolean?
(test-execute execute?) → void?
  execute? : any/c
A parameter that stores a boolean, defaults to #t, that can be used to suppress evaluation of test expressions.

2 GUI Interface

 (require test-engine/scheme-gui)

This module requires MrEd and produces an independent window when displaying test results. It provides the same bindings as test-engine/scheme-tests.

3 Integrating languages with Test Engine

(To be written.)