~ubuntu-branches/ubuntu/oneiric/libsql-reservedwords-perl/oneiric

« back to all changes in this revision

Viewing changes to t/05-db2.t

  • Committer: Bazaar Package Importer
  • Author(s): Krzysztof Krzyżaniak (eloy)
  • Date: 2007-05-23 15:46:51 UTC
  • Revision ID: james.westby@ubuntu.com-20070523154651-yfxf9zx61d147v8c
Tags: upstream-0.7
Import upstream version 0.7

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!perl
 
2
 
 
3
use strict;
 
4
use warnings;
 
5
 
 
6
use Test::More;
 
7
 
 
8
plan tests => 51;
 
9
 
 
10
use_ok( 'SQL::ReservedWords::DB2' );
 
11
 
 
12
my @methods = qw[
 
13
    is_reserved
 
14
    is_reserved_by_db2v5
 
15
    is_reserved_by_db2v6
 
16
    is_reserved_by_db2v7
 
17
    is_reserved_by_db2v8
 
18
    reserved_by
 
19
    words
 
20
];
 
21
 
 
22
can_ok( 'SQL::ReservedWords::DB2', @methods );
 
23
 
 
24
foreach my $method ( @methods ) {
 
25
    ok ! __PACKAGE__->can($method), "$method was not exported by default";
 
26
}
 
27
 
 
28
ok   my @words = SQL::ReservedWords::DB2->words,                     'Got words';
 
29
cmp_ok @words, '==', 264,                                            'Got 264 words';
 
30
ok   SQL::ReservedWords::DB2->is_reserved('user'),                   'USER is reserved';
 
31
ok   SQL::ReservedWords::DB2->is_reserved_by_db2v5('user'),          'USER is reserved by DB2 5';
 
32
ok   SQL::ReservedWords::DB2->is_reserved_by_db2v6('user'),          'USER is reserved by DB2 6';
 
33
ok   SQL::ReservedWords::DB2->is_reserved_by_db2v7('user'),          'USER is reserved by DB2 7';
 
34
ok   SQL::ReservedWords::DB2->is_reserved_by_db2v8('user'),          'USER is reserved by DB2 8';
 
35
ok   SQL::ReservedWords::DB2->is_reserved('jar'),                    'JAR is reserved';
 
36
ok ! SQL::ReservedWords::DB2->is_reserved_by_db2v5('jar'),           'JAR is not reserved DB2 5';
 
37
ok ! SQL::ReservedWords::DB2->is_reserved_by_db2v6('jar'),           'JAR is not reserved DB2 6';
 
38
ok   SQL::ReservedWords::DB2->is_reserved_by_db2v7('jar'),           'JAR is reserved by DB2 7';
 
39
ok   SQL::ReservedWords::DB2->is_reserved_by_db2v8('jar'),           'JAR is reserved by DB2 8';
 
40
ok   SQL::ReservedWords::DB2->is_reserved('count'),                  'COUNT is reserved';
 
41
ok   SQL::ReservedWords::DB2->is_reserved_by_db2v5('count'),         'COUNT is reserved by DB2 5';
 
42
ok ! SQL::ReservedWords::DB2->is_reserved_by_db2v6('count'),         'COUNT is not reserved by DB2 6';
 
43
ok ! SQL::ReservedWords::DB2->is_reserved_by_db2v7('count'),         'COUNT is not reserved by DB2 7';
 
44
ok ! SQL::ReservedWords::DB2->is_reserved_by_db2v8('count'),         'COUNT is not reserved by DB2 8';
 
45
ok ! SQL::ReservedWords::DB2->is_reserved('bogus'),                  'BOGUS is not reserved';
 
46
ok ! SQL::ReservedWords::DB2->is_reserved_by_db2v5('bogus'),         'BOGUS is not reserved by DB2 5';
 
47
ok ! SQL::ReservedWords::DB2->is_reserved_by_db2v6('bogus'),         'BOGUS is not reserved by DB2 6';
 
48
ok ! SQL::ReservedWords::DB2->is_reserved_by_db2v7('bogus'),         'BOGUS is not reserved by DB2 7';
 
49
ok ! SQL::ReservedWords::DB2->is_reserved_by_db2v8('bogus'),         'BOGUS is not reserved by DB2 8';
 
50
ok ! SQL::ReservedWords::DB2->is_reserved(undef),                    'undef is not reserved';
 
51
 
 
52
is_deeply [ SQL::ReservedWords::DB2->reserved_by('user')   ],
 
53
          [ 'DB2 5', 'DB2 6', 'DB2 7', 'DB2 8' ],
 
54
          'Got right reserved by for USER';
 
55
 
 
56
is_deeply [ SQL::ReservedWords::DB2->reserved_by('jar')    ],
 
57
          [ 'DB2 7', 'DB2 8'                               ],
 
58
          'Got right reserved by for ACCESSIBLE';
 
59
 
 
60
is_deeply [ SQL::ReservedWords::DB2->reserved_by('count')  ],
 
61
          [ 'DB2 5'                                        ],
 
62
          'Got right reserved by for COUNT';
 
63
 
 
64
is_deeply [ SQL::ReservedWords::DB2->reserved_by('java')   ],
 
65
          [ 'DB2 6', 'DB2 7'                               ],
 
66
          'Got right reserved by for JAVA';
 
67
 
 
68
is_deeply [ SQL::ReservedWords::DB2->reserved_by('bogus')  ],
 
69
          [                                                ],
 
70
          'Got right reserved by for BOGUS';
 
71
 
 
72
use_ok 'SQL::ReservedWords::DB2', @methods;
 
73
 
 
74
foreach my $method ( @methods ) {
 
75
    cmp_ok __PACKAGE__->can($method), '==', SQL::ReservedWords::DB2->can($method), "$method was exported";
 
76
}
 
77
 
 
78
ok   @words = words(),                                               'Got words';
 
79
ok   is_reserved('user'),                                            'USER is reserved';
 
80
ok   is_reserved_by_db2v5('user'),                                   'USER is reserved by DB2 5';
 
81
ok   is_reserved_by_db2v6('user'),                                   'USER is reserved by DB2 6';
 
82
ok   is_reserved_by_db2v7('user'),                                   'USER is reserved by DB2 7';
 
83
ok   is_reserved_by_db2v8('user'),                                   'USER is reserved by DB2 8';