[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

# 2. Bug Detection and Reporting

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

## 2.1 Introduction to Bug Detection and Reporting

Like all large programs, Maxima contains both known and unknown bugs. This chapter describes the built-in facilities for running the Maxima test suite as well as reporting new bugs.

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

## 2.2 Definitions for Bug Detection and Reporting

Function: run_testsuite ()
Function: run_testsuite (boolean)
Function: run_testsuite (boolean, boolean)
Function: run_testsuite (boolean, boolean, list)

  Run the Maxima test suite. Tests producing the desired answer are considered "passes," as are tests that do not produce the desired answer, but are marked as known bugs.

  `run_testsuite ()` displays only tests that do not pass.

  `run_testsuite (true)` displays tests that are marked as known bugs, as well as failures.

  `run_testsuite (true, true)` displays all tests.

  If the optional third argument is given, a subset of the tests is run. The subset of the tests to run is given as a list of the names of the tests. The complete set of tests is specified by `testsuite_files`.

  `run_testsuite` changes the Maxima environment. Typically a test script executes `kill` to establish a known environment (namely one without user-defined functions and variables) and then defines functions and variables appropriate to the test.

  `run_testsuite` returns `done`.

Option variable: testsuite_files

  `testsuite_files` is the set of tests to be run by `run_testsuite`. It is a list of names of the files containing the tests to run. If some of the tests in a file are known to fail, then instead of listing the name of the file, a list containing the file name and the test numbers that fail is used.

  For example, this is a part of the default set of tests:

       ["rtest13s", ["rtest14", 57, 63]]

  This specifies the testsuite consists of the files "rtest13s" and "rtest14", but "rtest14" contains two tests that are known to fail: 57 and 63.

Function: bug_report ()

  Prints out Maxima and Lisp version numbers, and gives a link to the Maxima project bug report web page. The version information is the same as reported by `build_info`.

  When a bug is reported, it is helpful to copy the Maxima and Lisp version information into the bug report.

  `bug_report` returns an empty string `""`.

Function: build_info ()

  Prints out a summary of the parameters of the Maxima build.

  `build_info` returns an empty string `""`.

[ << ] | [ >> ] |  |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

This document was generated on March, 19 2006 using texi2html 1.76.