added test file
[webpac2] / t / 5-output-sorted.t
1 #!/usr/bin/perl -w
2
3 use strict;
4 use lib 'lib';
5
6 use Test::More tests => 16;
7
8 BEGIN {
9 use_ok( 'WebPAC::Test' );
10 use_ok( 'WebPAC::Output::Sorted' );
11 }
12
13 my $path = "$abs_path/sorted/";
14
15 ok(my $out = new WebPAC::Output::Sorted({
16         path => $path,
17         database => 'test',
18         clean => 1,
19         %LOG
20 }), "new");
21
22 ok( $out->init, 'init' );
23
24 my $ds = {
25         'Source' => {
26                 'name' => 'Izvor: ',
27                 'sorted' => [ 'foo' ]
28         },
29         'ID' => {
30                 'sorted' => 'id',
31         },
32         'Array' => {
33                 'sorted' => [ qw/a1 a2 s3 a4 a5/ ],
34         },
35 };
36
37 throws_ok { $out->add( ) } qr/need id/, 'add without params';
38 throws_ok { $out->add( 42 ) } qr/need ds/, 'add without ds';
39
40 ok( $out->add( 42, $ds ), 'add 42' );
41
42 ok( $out->add( 99, { foo => { sorted => 'bar' } } ), 'add 99' );
43
44 ok( $out->add( 100, { foo => { sorted => [ qw/foo bar baz/ ] } } ), 'add 100' );
45
46 ok( -e $out->path, "created $path" );
47
48 diag $out->path," eq ",$path if $debug;
49 cmp_ok( $out->path, 'eq', $path, 'path' );
50
51 ok( $out->finish, 'finish' );
52
53 foreach my $l ( qw/source id array foo/ ) {
54         ok( -e "$path/$l.txt", "list $l exists" );
55 }