NAME

Test::Mini::Logger - Output Logger Base Class

DESCRIPTION

Whether you're using a tool that expects output in a certain format, or you just long for the familiar look and feel of another testing framework, this is what you're looking for.

METHODS

Attribute Accessors

buffer
- buffer($self) # => IO 

Output buffer.

Returns:

(IO) - Output buffer.

verbose
- verbose($self) # => Object 

Logger verbosity.

Returns:

Logger verbosity.

Output Functions

print
- print($self, @msg) # => Object 

Write output to the #buffer . Lines will be output without added newlines.

Parameters:

@msg - The message(s) to be printed; will be handled as per print.

say
- say($self, @msg) # => Object 

Write output to the #buffer . Lines will be output with appended newlines.

Parameters:

@msg - The message(s) to be printed; newlines will be appended to each message, before being passed to #print .

Callbacks

begin_test
- begin_test($self, $tc, $test) # => Object 

Called before each test is run.

Parameters:

$tc (Class) - The test case owning the test method.

$test (String) - The name of the test method being run.

begin_test_case
- begin_test_case($self, $tc, @tests) # => Object 

Called before each test case is run.

Parameters:

$tc (Class) - The test case being run.

@tests (Array<String>) - A list of tests to be run.

begin_test_suite
- begin_test_suite($self, %args) # => Object 

Called before the test suite is run.

Parameters:

%args (Hash) - Options the test suite was run with.

Valid Options for %args:

filter (String) - Test name filter.

seed (String) - Randomness seed.

error
- error($self, $tc, $test, $e) # => Object 

Called when a test dies with an error. Increments the error count.

Parameters:

$tc (Class) - The test case owning the test method.

$test (String) - The name of the test with an error.

$e (Test::Mini::Exception) - The exception object.

fail
- fail($self, $tc, $test, $e) # => Object 

Called when a test fails. Increments the failure count.

Parameters:

$tc (Class) - The test case owning the test method.

$test (String) - The name of the failed test.

$e (Test::Mini::Exception::Assert) - The exception object.

finish_test
- finish_test($self, $tc, $test, $assertions) # => Object 

Called after each test is run. Increments the test and assertion counts, and finalizes the test's timing.

Parameters:

$tc (Class) - The test case owning the test method.

$test (String) - The name of the test method just run.

$assertions (Integer) - The number of assertions called.

finish_test_case
- finish_test_case($self, $tc, @tests) # => Object 

Called after each test case is run. Increments the test case count, and finalizes the test case's timing.

Parameters:

$tc (Class) - The test case just run.

@tests (Array<String>) - A list of tests run.

finish_test_suite
- finish_test_suite($self, $exit_code) # => Object 

Called after each test suite is run. Finalizes the test suite timing.

Parameters:

$exit_code (Integer) - Status the tests finished with.

pass
- pass($self, $tc, $test) # => Object 

Called when a test passes. Increments the pass count.

Parameters:

$tc (Class) - The test case owning the test method.

$test (String) - The name of the passing test.

skip
- skip($self, $tc, $test, $e) # => Object 

Called when a test is skipped. Increments the skip count.

Parameters:

$tc (Class) - The test case owning the test method.

$test (String) - The name of the skipped test.

$e (Test::Mini::Exception::Skip) - The exception object.

Statistics

count
- count # => Hash
- count($key) # => Number

Accessor for counters.

Overloads:

- count # => Hash 

The count hash.

Returns:

(Hash) - The count hash.

- count($key) # => Number 

The value for the given key.

Parameters:

$key - A key in the count hash.

Returns:

(Number) - The value for the given key.

time
- time($self, $key) # => Number 

Accessor for the timing data.

Parameters:

$key - The key to look up timings for. Typical values are:

$self

Time for test suite

"TestCase"

Time for the test case

"TestCase#test"

Time for the given test

Times for units that have not finished should not be relied upon.

Returns:

(Number) - The time taken by the given argument, in seconds.

Class Methods

new
+ new($class, %args) # => Object 

Constructor.

Parameters:

%args (Hash) - Initial state for the new instance.

Valid Options for %args:

verbose - Logger verbosity. Defaults to 0.

buffer (IO) - Output buffer. Defaults to STDOUT.