debian man page for test::unit::assertion::coderef

Query: test::unit::assertion::coderef

OS: debian

Section: 3pm

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

Test::Unit::Assertion::CodeRef(3pm)			User Contributed Perl Documentation		       Test::Unit::Assertion::CodeRef(3pm)

NAME
Test::Unit::Assertion::CodeRef - A delayed evaluation assertion using a Coderef
SYNOPSIS
require Test::Unit::Assertion::CodeRef; my $assert_eq = Test::Unit::Assertion::CodeRef->new(sub { $_[0] eq $_[1] or Test::Unit::Failure->throw(-text => "Expected '$_[0]', got '$_[1]' "); }); $assert_eq->do_assertion('foo', 'bar'); Although this is how you'd use Test::Unit::Assertion::CodeRef directly, it is more usually used indirectly via Test::Unit::Test::assert, which instantiates a Test::Unit::Assertion::CodeRef when passed a Coderef as its first argument.
IMPLEMENTS
Test::Unit::Assertion::CodeRef implements the Test::Unit::Assertion interface, which means it can be plugged into the Test::Unit::TestCase and friends' "assert" method with no ill effects.
DESCRIPTION
This class is used by the framework to allow us to do assertions in a 'functional' manner. It is typically used generated automagically in code like: $self->assert(sub { $_[0] == $_[1] or $self->fail("Expected $_[0], got $_[1]"); }, 1, 2); (Note that if Damian Conway's Perl6 RFC for currying ever comes to pass then we'll be able to do this as: $self->assert(^1 == ^2 || $self->fail("Expected ^1, got ^2"), 1, 2) which will be nice...) If you have a working B::Deparse installed with your perl installation then, if an assertion fails, you'll see a listing of the decompiled coderef (which will be sadly devoid of comments, but should still be useful)
AUTHOR
Copyright (c) 2001 Piers Cawley <pdcawley@iterative-software.com>. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
SEE ALSO
o Test::Unit::TestCase o Test::Unit::Assertion perl v5.8.8 2006-09-13 Test::Unit::Assertion::CodeRef(3pm)
Related Man Pages
net::ldap::control::assertion(3) - mojave
test::unit::assert(3pm) - debian
test::unit::assertion(3pm) - debian
test::unit::runner::terminal(3pm) - debian
test::unit::testsuite(3pm) - debian
Similar Topics in the Unix Linux Community
AceUnit 0.5 (Default branch)
Dave's Unit Test 0.8.1 (Default branch)
Dave's Unit Test 0.8.2 (Default branch)
Test
Test Test Test Test Test Test Test Test