pas2ut(1)

NAME
pas2ut - The Free Pascal unit to unit test case conversion tool.

SYNOPSIS
pas2ut [options] inputfile [outputfile]

DESCRIPTION
pas2ut Scans the input file for classes and routines, and creates a testcase for all classes and routines found in the interface section of the file. It can generate a unit or an include file. All tests are created with a standard fail message. By default, only tests for public, published and default visibility members of classes are generated.

USAGE
pas2ut takes the following options at this time:

--defaultclasstest=list
    Specify a comma-separated list of default tests for each class. The elements in the list must be valid pascal identifiers.

--failmessage=Msg
    Set the message for the Fail() statement inside each test method.

--limit=list
    Specify a comma-separated list of global identifiers for which to generate tests. By default, tests are generated for all global identifiers in the interface section of a unit.

--prefix=name
    Set the prefix for the test names (default is Test ). A test is named after the identifier it tests, with this prefix.

--singletestclass
    Use a single test class for each class found. The default is to create a testcase class per class in the input unit.

--skip-classes
    Do not generate test code for classes, only for functions and procedures.

--skip-declaration
    Do not generate declarations for the tests, only implementations.

--skip-default
    skip tests for default visibility members. By default, they are generated, together with Public or published members.

--skip-fail
    Do not create fail() statements in test routine implementations.

--skip-fields
    Do not generate testcases for fields of classes (only for methods and properties).

--skip-functions
    Do not generate tests for functions/procedures, only for classes.

--skip-implementation
    Do not generate (empty) implementation for the tests, only a class declaration is generated. (it can be completed in an IDE such as Lazarus or MSIDE)

--skip-methods
    Do not generate tests for methods of classes, only for fields and properties.

--skip-properties
    Do not generate tests for properties of classes, only for fields and methods.

--skip-property-default
    Do not generate a default test for each property.

--skip-public
    Skip tests for public members, only protected members will be tested if --test-protected is in effect.

--skip-published
    Do not generate tests for published members, only public and default members will be tested.

--skip-register
    Do not generate RegisterTests statement.

--skip-setup
    Do not override the TTestCase.Setup() method in the generated class.

--skip-teardown
    Do not override the TTestCase.TearDown() method in the generated class.

--skip-unit
    Do not generate a unit, just an include file.

--testparentname=name
    Set the name of the parent class for generated test classes. The default is TTestCase this can be used to set another class name.

--test-property-bounds
    Generate a GetBounds test for each property.

--test-property-maxlen
    Generate a MaxLen test for each property.

--test-property-notify
    Generate a Notify test for each property.

--test-property-required
    Generate a Required test for each property.

--test-protected
    Also generate tests for protected class members. By default, tests are only generated for public, published and default visibility members.

--testunitname=name
    Set the name of the generated unit (default is taken from output file name)

--tiopf
    Create tiopf tests (this is the same as specifying --default,--bounds,--required,--notify and --maxlen tests.)

--unittestclassname=name
    Set the global unit test class name. To be used with --singletestclass.
The --limit and --defaultclasstest may be specified multiple times.

SEE ALSO

    fpc(1)