Skip to content

Latest commit

 

History

History
121 lines (78 loc) · 4.22 KB

kettle_test.md

File metadata and controls

121 lines (78 loc) · 4.22 KB

[ Home | Main Table Of Contents | Table Of Contents | Keyword Index ]

NAME

kettle_test - Kettle - Testsuite Support

Table Of Contents

SYNOPSIS

package require Tcl 8.5 9

::kt source path
::kt source* pattern
::kt find pattern
::kt check name version
::kt require type name arg...
::kt local type name arg...
::kt dictsort dict

DESCRIPTION

Welcome to Kettle, an application and set of packages providing support for the easy building and installation of pure Tcl packages, and Critcl based Tcl packages.

Please read the document Kettle - Introduction to Kettle, if you have not done so already, to get an overview of the whole system.

  • ::kt source path

    This command sources the file specified by the path. In contrast to the builtin ::source command, this resolves relative paths relative to the tcltest::testsDirectory.

  • ::kt source* pattern

    This command sources all files found in the tcltest::testsDirectory and matching the pattern.

  • ::kt find pattern

    This command returns a list of all files found in the tcltest::testsDirectory and matching the pattern.

  • ::kt check name version

    This command assumes that the package name is present, and verifies that we are using at least the specified version. If not the command aborts the testsuite in a manner kettle's test controller can detect and respond to.

    This is useful for checking the versions of the Tcl core and/or tcltest. Note that the whole of kettle assumes to be run under at least Tcl 8.5, and having tcltest 2 available.

  • ::kt require type name arg...

    This command is a wrapper around Tcl's builtin package require which aborts the testsuite in a manner kettle's test controller can detect and respond to if the specified external package is not found.

    The type can be one of support, or testing, indicating the use of the package in the testsuite, i.e. a supporting package, or the package under test itself. Exactly one package should have this type.

  • ::kt local type name arg...

    This command is like kt require above, except its search of packages is restricted to the local packages provided by the test controller, which should be the package under test, and its local dependencies, if any.

  • ::kt dictsort dict

    This command takes a Tcl dictionary, sorts its contents by its keys (lsort -dict), and returns the sorted dictionary.

    This is useful to impose a canonical order on dictionary and array results whose natural order can change between Tcl versions, or package revisions.

License

This package, written by Andreas Kupries, is BSD licensed.

Bugs, Ideas, Feedback

This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such at the Kettle Tracker. Please also report any ideas for enhancements you may have for either package and/or documentation.

KEYWORDS

build tea

CATEGORY

Build support