Piotr Roszatycki > Test-Assert > Exception::Assertion

Download:
Test-Assert-0.0504.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  1
Open  0
View/Report Bugs
Module Version: 0.0504   Source  

NAME ^

Exception::Assertion - Thrown when assertion failed

SYNOPSIS ^

  use Exception::Assertion;

  sub assert_foo {
      my $self = eval { $_[0]->isa(__PACKAGE__) } ? shift : __PACKAGE__;
      my ($condition, $message) = @_;
      Exception::Assertion->throw(
          message => $message,
          reason  => 'foo failed',
      ) unless $condition;
  }

  assert_foo( 0, 'assert_foo failed' );

DESCRIPTION ^

This class extends standard Exception::Base and is thrown when assertion is failed. It contains additional attribute reason which represents detailed message about reason of failed assertion. The exception has also raised verbosity.

INHERITANCE ^

CONSTANTS ^

ATTRS : HashRef

Declaration of class attributes as reference to hash.

See Exception::Base for details.

ATTRIBUTES ^

This class provides new attributes. See Exception::Base for other descriptions.

reason : Str

Contains the additional message filled by assertion method.

message : Str = "Unknown assertion failed"

Contains the message of the exception. This class overrides the default value from Exception::Base class.

verbosity : Int = 3

The default verbosity for assertion exception is raised to 3. This class overrides the default value from Exception::Base class.

string_attributes : ArrayRef[Str] = ["message", "reason"]

Meta-attribute contains the format of string representation of exception object. This class overrides the default value from Exception::Base class.

SEE ALSO ^

Exception::Base, Test::Assertion.

AUTHOR ^

Piotr Roszatycki <dexter@cpan.org>

COPYRIGHT ^

Copyright (C) 2008, 2009 by Piotr Roszatycki <dexter@cpan.org>. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://www.perl.com/perl/misc/Artistic.html

syntax highlighting: