File: webservice-cia-parser.t

package info (click to toggle)
libwebservice-cia-perl 1.4-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 680 kB
  • ctags: 46
  • sloc: perl: 3,707; makefile: 5
file content (51 lines) | stat: -rw-r--r-- 1,524 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
use strict;
use Test::More tests => 9;
use Module::Build;

#1
BEGIN {	use_ok('WebService::CIA::Parser'); }

#2
my $parser = WebService::CIA::Parser->new();
ok( defined $parser, 'new() returns something' );

#3
ok( $parser->isa('WebService::CIA::Parser'), 'new() returns a WebService::CIA::Parser object' );

my $data = $parser->parse('zz', q(
                        <tr class="eur_light">
                        <td width="450" height="20">
                        <div class="category" style="padding-left:5px;" id="field">
                        <a href="something" title="Notes and Definitions: Test"> Test:</a>
                        </div>
                        </td>
                        </tr>
                        <tr height="22">
                        <td colspan="2" id="data">
                        <div class="category_data">Wombat</div>
));

#4
ok( exists $data->{Test} &&
    $data->{Test} eq 'Wombat', 'parse() - sets field data correctly' );

#5
ok( exists $data->{URL} &&
    $data->{URL} eq $WebService::CIA::base_url . 'geos/zz.html', 'parse() - sets URL data correctly' );

SKIP: {

    skip 'Skipping internet-based tests - set TEST_INTERNET to run these tests', 4 if ! $ENV{ TEST_INTERNET };

    require LWP::UserAgent;
    require Crypt::SSLeay;

    my $ua = LWP::UserAgent->new();
    my $data = $parser->parse( 'uk', '' );

    for ( "URL - Flag", "URL - Map", "URL", "URL - Print" ) {
        my $resp = $ua->get( $data->{ $_ } );
        is( $resp->code, 200, "$_ OK" );
    }

}