/[suikacvs]/messaging/manakai/t/util-error-textparser.t
Suika

Contents of /messaging/manakai/t/util-error-textparser.t

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (hide annotations) (download) (as text)
Fri Dec 26 07:09:42 2003 UTC (21 years, 4 months ago) by wakaba
Branch: MAIN
CVS Tags: before-dis2-200411, manakai-release-0-3-2, manakai-release-0-3-1, manakai-200612
Branch point for: experimental-xml-parser-200401
Changes since 1.3: +36 -96 lines
File MIME type: application/x-troff
Rewritten for new implementation

1 wakaba 1.1 use strict;
2 wakaba 1.4 use Message::Util::Error;
3 wakaba 1.1
4 wakaba 1.4 my $src = q{Some Parsed Text};
5 wakaba 1.1
6 wakaba 1.4 my $err = new Message::Util::Error::TextParser
7     package => 'test_error';
8    
9     report $err -type => 'ERROR_1', source => \$src;
10    
11     $src =~ /Some/gc;
12    
13     report $err -type => 'ERROR_1', source => \$src;
14    
15     $src =~ /Any/gc;
16    
17     report $err -type => 'ERROR_1', source => \$src;
18    
19     $src =~ /Text/gc;
20 wakaba 1.1
21 wakaba 1.4 report $err -type => 'ERROR_1', source => \$src;
22 wakaba 1.1
23 wakaba 1.4 BEGIN {
24     package test_error;
25     require Message::Util::Error::TextParser;
26     push our @ISA, 'Message::Util::Error::TextParser::error';
27 wakaba 1.1
28 wakaba 1.4 use Test;
29     my @result = qw/1-1 1-5 1-5 1-17/;
30     my $i = 0;
31     plan tests => scalar @result;
32    
33     sub ___report_error ($$) {
34     Test::ok ($_[1]->text, $result[$i++]);
35     warn $_[1]->stringify if $^W;
36 wakaba 1.1 }
37    
38 wakaba 1.4 sub ___error_def () {+{
39     ERROR_1 => {
40     description => q(%err-line;-%err-char;),
41     },
42     }}
43     }
44 wakaba 1.1
45     =head1 LICENSE
46    
47     Copyright 2003 Wakaba <w@suika.fam.cx>
48    
49     This program is free software; you can redistribute it and/or
50     modify it under the same terms as Perl itself.
51    
52     =cut
53    
54 wakaba 1.4 1; # $Date: 2003/10/31 08:39:27 $

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24  
Google Analytics is used in this page; Cookies are used. 忍者AdMax is used in this page; Cookies are used. Privacy policy.