~ubuntu-branches/ubuntu/oneiric/swig1.3/oneiric

« back to all changes in this revision

Viewing changes to Examples/test-suite/perl5/li_std_except_runme.pl

  • Committer: Bazaar Package Importer
  • Author(s): Michael Vogt
  • Date: 2008-11-10 16:29:56 UTC
  • mfrom: (1.2.8 upstream) (2.1.3 lenny)
  • Revision ID: james.westby@ubuntu.com-20081110162956-xue6itkuqhbza87s
Tags: 1.3.36-1ubuntu1
* Merge from debian unstable, remaining changes:
  - Drop pike and libchicken-dev from the build-depends 
    (both are universe)
  - Use python2.5 instead of python2.4.
  - use php5
  - Clean Runtime/ as well.
  - debian/Rules (clean): Remove Lib/ocaml/swigp4.ml.
  - drop "--without-mzscheme", we don't have it in our build-depends

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/perl
 
2
use strict;
 
3
use warnings;
 
4
use Test::More tests => 22;
 
5
BEGIN { use_ok('li_std_except') }
 
6
require_ok('li_std_except');
 
7
 
 
8
# adapted from ../java/li_std_except_runme.java
 
9
 
 
10
# these are not prescriptive tests, they just match the error classes I
 
11
# found are currently being issued, we may want to provide a more
 
12
# granular error api later, so don't let these tests stop code
 
13
# improvements.
 
14
 
 
15
my $test = new li_std_except::Test();
 
16
eval { $test->throw_bad_exception() };
 
17
like($@, qr/\bSystemError\b/, "throw_bad_exception");
 
18
eval { $test->throw_domain_error() };
 
19
like($@, qr/\bValueError\b/, "throw_domain_error");
 
20
like($@, qr/\boops\b/, "throw_domain_error message");
 
21
eval { $test->throw_exception() };
 
22
like($@, qr/\bSystemError\b/, "throw_exception");
 
23
eval { $test->throw_invalid_argument() };
 
24
like($@, qr/\bValueError\b/, "throw_invalid_argument");
 
25
like($@, qr/\boops\b/, "throw_invalid_argument message");
 
26
eval { $test->throw_length_error() };
 
27
like($@, qr/\bIndexError\b/, "throw_length_error");
 
28
like($@, qr/\boops\b/, "throw_length_error message");
 
29
eval { $test->throw_logic_error() };
 
30
like($@, qr/\bRuntimeError\b/, "throw_logic_error");
 
31
like($@, qr/\boops\b/, "throw_logic_error message");
 
32
eval { $test->throw_out_of_range() };
 
33
like($@, qr/\bIndexError\b/, "throw_out_of_range");
 
34
like($@, qr/\boops\b/, "throw_out_of_range message");
 
35
eval { $test->throw_overflow_error() };
 
36
like($@, qr/\bOverflowError\b/, "throw_overflow_error");
 
37
like($@, qr/\boops\b/, "throw_overflow_error message");
 
38
eval { $test->throw_range_error() };
 
39
like($@, qr/\bOverflowError\b/, "throw_range_error");
 
40
like($@, qr/\boops\b/, "throw_range_error message");
 
41
eval { $test->throw_runtime_error() };
 
42
like($@, qr/\bRuntimeError\b/, "throw_runtime_error");
 
43
like($@, qr/\boops\b/, "throw_runtime_error message");
 
44
eval { $test->throw_underflow_error() };
 
45
like($@, qr/\bOverflowError\b/, "throw_underflow_error");
 
46
like($@, qr/\boops\b/, "throw_underflow_error message");