... | ... |
@@ -20,8 +20,7 @@ __PACKAGE__->attr( |
20 | 20 |
[qw/data_source dbh password user/], |
21 | 21 |
cache => 1, |
22 | 22 |
dbi_option => sub { {} }, |
23 |
- filter_check => 1, |
|
24 |
- query_builder => sub {DBIx::Custom::QueryBuilder->new}, |
|
23 |
+ query_builder => sub { DBIx::Custom::QueryBuilder->new }, |
|
25 | 24 |
result_class => 'DBIx::Custom::Result', |
26 | 25 |
table_class => 'DBIx::Custom::Table' |
27 | 26 |
); |
... | ... |
@@ -732,8 +731,10 @@ sub _croak { |
732 | 731 |
} |
733 | 732 |
|
734 | 733 |
# DEPRECATED! |
735 |
- |
|
736 |
-__PACKAGE__->attr(dbi_options => sub { {} }); |
|
734 |
+__PACKAGE__->attr( |
|
735 |
+ dbi_options => sub { {} }, |
|
736 |
+ filter_check => 1 |
|
737 |
+); |
|
737 | 738 |
|
738 | 739 |
sub default_bind_filter { |
739 | 740 |
my $self = shift; |
... | ... |
@@ -5,7 +5,10 @@ use warnings; |
5 | 5 |
|
6 | 6 |
use base 'Object::Simple'; |
7 | 7 |
|
8 |
-__PACKAGE__->attr([qw/columns default_filter filter sql sth/]); |
|
8 |
+__PACKAGE__->attr([qw/columns filter sql sth/]); |
|
9 |
+ |
|
10 |
+# DEPRECATED! |
|
11 |
+__PACKAGE__->attr('default_filter'); |
|
9 | 12 |
|
10 | 13 |
1; |
11 | 14 |
|
... | ... |
@@ -26,18 +29,11 @@ DBIx::Custom::Query - Query |
26 | 29 |
|
27 | 30 |
Column names. |
28 | 31 |
|
29 |
-=head2 C<default_filter> |
|
30 |
- |
|
31 |
- my $default_filter = $query->default_filter; |
|
32 |
- $query = $query->default_filter('encode_utf8'); |
|
33 |
- |
|
34 |
-Default filter when parameter binding is executed. |
|
35 |
- |
|
36 | 32 |
=head2 C<filter> |
37 | 33 |
|
38 | 34 |
my $filter = $query->filter; |
39 |
- $query = $query->filter({author => 'encode_utf8', |
|
40 |
- title => 'encode_utf8'}); |
|
35 |
+ $query = $query->filter({author => 'to_something', |
|
36 |
+ title => 'to_something'}); |
|
41 | 37 |
|
42 | 38 |
Filters when parameter binding is executed. |
43 | 39 |
This overwrites C<default_filter>. |
... | ... |
@@ -7,7 +7,7 @@ use base 'Object::Simple'; |
7 | 7 |
|
8 | 8 |
use Carp 'croak'; |
9 | 9 |
use DBIx::Custom::Query; |
10 |
-use DBIx::Custom::QueryBuilder::TagProcessors; |
|
10 |
+use DBIx::Custom::TagProcessor; |
|
11 | 11 |
|
12 | 12 |
# Carp trust relationship |
13 | 13 |
push @DBIx::Custom::CARP_NOT, __PACKAGE__; |
... | ... |
@@ -17,17 +17,17 @@ push @DBIx::Custom::Where::CARP_NOT, __PACKAGE__; |
17 | 17 |
# Attributes |
18 | 18 |
__PACKAGE__->attr('tag_processors' => sub { |
19 | 19 |
{ |
20 |
- '?' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_placeholder_tag, |
|
21 |
- '=' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_equal_tag, |
|
22 |
- '<>' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_not_equal_tag, |
|
23 |
- '>' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_greater_than_tag, |
|
24 |
- '<' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_lower_than_tag, |
|
25 |
- '>=' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_greater_than_equal_tag, |
|
26 |
- '<=' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_lower_than_equal_tag, |
|
27 |
- 'like' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_like_tag, |
|
28 |
- 'in' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_in_tag, |
|
29 |
- 'insert_param' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_insert_param_tag, |
|
30 |
- 'update_param' => \&DBIx::Custom::QueryBuilder::TagProcessors::expand_update_param_tag |
|
20 |
+ '?' => \&DBIx::Custom::TagProcessor::expand_placeholder_tag, |
|
21 |
+ '=' => \&DBIx::Custom::TagProcessor::expand_equal_tag, |
|
22 |
+ '<>' => \&DBIx::Custom::TagProcessor::expand_not_equal_tag, |
|
23 |
+ '>' => \&DBIx::Custom::TagProcessor::expand_greater_than_tag, |
|
24 |
+ '<' => \&DBIx::Custom::TagProcessor::expand_lower_than_tag, |
|
25 |
+ '>=' => \&DBIx::Custom::TagProcessor::expand_greater_than_equal_tag, |
|
26 |
+ '<=' => \&DBIx::Custom::TagProcessor::expand_lower_than_equal_tag, |
|
27 |
+ 'like' => \&DBIx::Custom::TagProcessor::expand_like_tag, |
|
28 |
+ 'in' => \&DBIx::Custom::TagProcessor::expand_in_tag, |
|
29 |
+ 'insert_param' => \&DBIx::Custom::TagProcessor::expand_insert_param_tag, |
|
30 |
+ 'update_param' => \&DBIx::Custom::TagProcessor::expand_update_param_tag |
|
31 | 31 |
} |
32 | 32 |
}); |
33 | 33 |
|
... | ... |
@@ -1,179 +0,0 @@ |
1 |
-package DBIx::Custom::QueryBuilder::TagProcessors; |
|
2 |
- |
|
3 |
-use strict; |
|
4 |
-use warnings; |
|
5 |
- |
|
6 |
-use Carp 'croak'; |
|
7 |
- |
|
8 |
-# Carp trust relationship |
|
9 |
-push @DBIx::Custom::QueryBuilder::CARP_NOT, __PACKAGE__; |
|
10 |
- |
|
11 |
-sub expand_equal_tag { _expand_basic_tag('=', @_) } |
|
12 |
-sub expand_greater_than_equal_tag { _expand_basic_tag('>=', @_) } |
|
13 |
-sub expand_greater_than_tag { _expand_basic_tag('>', @_) } |
|
14 |
- |
|
15 |
-sub expand_in_tag { |
|
16 |
- my ($column, $count) = @_; |
|
17 |
- |
|
18 |
- # Check arguments |
|
19 |
- croak qq{Column name and count of values must be specified in tag "{in }"} |
|
20 |
- unless $column && $count && $count =~ /^\d+$/; |
|
21 |
- |
|
22 |
- # Part of statement |
|
23 |
- my $s = "$column in ("; |
|
24 |
- for (my $i = 0; $i < $count; $i++) { |
|
25 |
- $s .= '?, '; |
|
26 |
- } |
|
27 |
- $s =~ s/, $//; |
|
28 |
- $s .= ')'; |
|
29 |
- |
|
30 |
- # Columns |
|
31 |
- my $columns = []; |
|
32 |
- push @$columns, $column for (0 .. $count - 1); |
|
33 |
- |
|
34 |
- return [$s, $columns]; |
|
35 |
-} |
|
36 |
- |
|
37 |
-sub expand_insert_param_tag { |
|
38 |
- my @columns = @_; |
|
39 |
- |
|
40 |
- # Insert parameters |
|
41 |
- my $s = '('; |
|
42 |
- $s .= "$_, " for @columns; |
|
43 |
- $s =~ s/, $//; |
|
44 |
- $s .= ') '; |
|
45 |
- $s .= 'values ('; |
|
46 |
- $s .= "?, " for @columns; |
|
47 |
- $s =~ s/, $//; |
|
48 |
- $s .= ')'; |
|
49 |
- |
|
50 |
- return [$s, \@columns]; |
|
51 |
-} |
|
52 |
- |
|
53 |
-sub expand_like_tag { _expand_basic_tag('like', @_) } |
|
54 |
-sub expand_lower_than_equal_tag { _expand_basic_tag('<=', @_) } |
|
55 |
-sub expand_lower_than_tag { _expand_basic_tag('<', @_) } |
|
56 |
-sub expand_not_equal_tag { _expand_basic_tag('<>', @_) } |
|
57 |
- |
|
58 |
-sub expand_placeholder_tag { |
|
59 |
- my $column = shift; |
|
60 |
- |
|
61 |
- # Check arguments |
|
62 |
- croak qq{Column name must be specified in tag "{? }"} |
|
63 |
- unless $column; |
|
64 |
- |
|
65 |
- return ['?', [$column]]; |
|
66 |
-} |
|
67 |
- |
|
68 |
-sub expand_update_param_tag { |
|
69 |
- my @columns = @_; |
|
70 |
- |
|
71 |
- # Update paramters |
|
72 |
- my $s = 'set '; |
|
73 |
- $s .= "$_ = ?, " for @columns; |
|
74 |
- $s =~ s/, $//; |
|
75 |
- |
|
76 |
- return [$s, \@columns]; |
|
77 |
-} |
|
78 |
- |
|
79 |
-sub _expand_basic_tag { |
|
80 |
- my ($name, $column) = @_; |
|
81 |
- |
|
82 |
- # Check arguments |
|
83 |
- croak qq{Column name must be specified in tag "{$name }"} |
|
84 |
- unless $column; |
|
85 |
- |
|
86 |
- return ["$column $name ?", [$column]]; |
|
87 |
-} |
|
88 |
- |
|
89 |
-1; |
|
90 |
- |
|
91 |
-=head1 NAME |
|
92 |
- |
|
93 |
-DBIx::Custom::QueryBuilder::TagProcessors - Tag processors |
|
94 |
- |
|
95 |
-=head1 SYNOPSYS |
|
96 |
- |
|
97 |
- my $expanded = expand_equal_tag($source); |
|
98 |
- my $expanded = expand_greater_than_equal_tag($source); |
|
99 |
- my $expanded = expand_greater_than_tag($source); |
|
100 |
- my $expanded = expand_like_tag($source); |
|
101 |
- my $expanded = expand_lower_than_equal_tag($source); |
|
102 |
- my $expanded = expand_lower_than_tag($source); |
|
103 |
- my $expanded = expand_in_tag($source); |
|
104 |
- my $expanded = expand_insert_param_tag($source); |
|
105 |
- my $expanded = expand_not_equal_tag($source); |
|
106 |
- my $expanded = expand_placeholder_tag($source); |
|
107 |
- my $expanded = expand_update_param_tag($source); |
|
108 |
- |
|
109 |
-=head1 TAG PROCESSORS |
|
110 |
- |
|
111 |
-Tag processor is function, |
|
112 |
-which receive arguments and return a part of SQL statment |
|
113 |
-and column names. |
|
114 |
-The part of SQL statment contains placeholders. |
|
115 |
-the count of placeholders must be |
|
116 |
-same as the count of column names. |
|
117 |
- |
|
118 |
- sub processor_name { |
|
119 |
- my @args = @_; |
|
120 |
- |
|
121 |
- # Part of statment, which constains placeholders |
|
122 |
- my $s; |
|
123 |
- |
|
124 |
- # Column names |
|
125 |
- my $columns = []; |
|
126 |
- |
|
127 |
- # Do something |
|
128 |
- # ... |
|
129 |
- |
|
130 |
- return [$s, $columns]; |
|
131 |
- } |
|
132 |
- |
|
133 |
-=head2 C<expand_equal_tag> |
|
134 |
- |
|
135 |
- ('NAME') -> ['NAME = ?', ['NAME']] |
|
136 |
- |
|
137 |
-=head2 C<expand_greater_than_equal_tag> |
|
138 |
- |
|
139 |
- ('NAME') -> ['NAME >= ?', ['NAME']] |
|
140 |
- |
|
141 |
-=head2 C<expand_greater_than_tag> |
|
142 |
- |
|
143 |
- ('NAME') -> ['NAME > ?', ['NAME']] |
|
144 |
- |
|
145 |
-=head2 C<expand_like_tag> |
|
146 |
- |
|
147 |
- ('NAME') -> ['NAME like ?', ['NAME']] |
|
148 |
- |
|
149 |
-=head2 C<expand_lower_than_equal_tag> |
|
150 |
- |
|
151 |
- ('NAME') -> ['NAME <= ?', ['NAME']] |
|
152 |
- |
|
153 |
-=head2 C<expand_lower_than_tag> |
|
154 |
- |
|
155 |
- ('NAME') -> ['NAME < ?', ['NAME']] |
|
156 |
- |
|
157 |
-=head2 C<expand_in_tag> |
|
158 |
- |
|
159 |
- ('NAME', 3) -> ['NAME in (?, ?, ?)', ['NAME', 'NAME', 'NAME']] |
|
160 |
- |
|
161 |
-=head2 C<expand_insert_param_tag> |
|
162 |
- |
|
163 |
- ('NAME1', 'NAME2') |
|
164 |
- -> ['(NAME1, NAME2) values (?, ?, ?)', ['NAME1', 'NAME2']] |
|
165 |
- |
|
166 |
-=head2 C<expand_not_equal_tag> |
|
167 |
- |
|
168 |
- ('NAME') -> ['NAME <> ?', ['NAME']] |
|
169 |
- |
|
170 |
-=head2 C<expand_placeholder_tag> |
|
171 |
- |
|
172 |
- ('NAME') -> ['?', ['NAME']] |
|
173 |
- |
|
174 |
-=head2 C<expand_update_param_tag> |
|
175 |
- |
|
176 |
- ('NAME1', 'NAME2') |
|
177 |
- -> ['set NAME1 = ?, NAME2 = ?', ['NAME1', 'NAME2']] |
|
178 |
- |
|
179 |
-=cut |
... | ... |
@@ -7,7 +7,7 @@ use base 'Object::Simple'; |
7 | 7 |
|
8 | 8 |
use Carp 'croak'; |
9 | 9 |
|
10 |
-__PACKAGE__->attr([qw/filter_check filters sth/]); |
|
10 |
+__PACKAGE__->attr([qw/filters sth/]); |
|
11 | 11 |
|
12 | 12 |
sub filter { |
13 | 13 |
my $self = shift; |
... | ... |
@@ -239,6 +239,9 @@ sub default_filter { |
239 | 239 |
return $self->{default_filter}; |
240 | 240 |
} |
241 | 241 |
|
242 |
+# DEPRECATED! |
|
243 |
+__PACKAGE__->attr('filter_check'); |
|
244 |
+ |
|
242 | 245 |
1; |
243 | 246 |
|
244 | 247 |
=head1 NAME |
... | ... |
@@ -311,13 +314,6 @@ This overwrites C<default_filter>. |
311 | 314 |
|
312 | 315 |
Resistered filters. |
313 | 316 |
|
314 |
-=head2 C<filter_check> |
|
315 |
- |
|
316 |
- my $filter_check = $result->filter_check; |
|
317 |
- $result = $result->filter_check; |
|
318 |
- |
|
319 |
-Enable filter validation. |
|
320 |
- |
|
321 | 317 |
=head2 C<sth> |
322 | 318 |
|
323 | 319 |
my $sth = $reuslt->sth |
... | ... |
@@ -10,7 +10,7 @@ use Carp 'croak'; |
10 | 10 |
# Carp trust relationship |
11 | 11 |
push @DBIx::Custom::CARP_NOT, __PACKAGE__; |
12 | 12 |
|
13 |
-__PACKAGE__->attr(['dbi', 'name', 'model']); |
|
13 |
+__PACKAGE__->attr(['dbi', 'name']); |
|
14 | 14 |
|
15 | 15 |
our $AUTOLOAD; |
16 | 16 |
|
... | ... |
@@ -0,0 +1,94 @@ |
1 |
+package DBIx::Custom::TagProcessor; |
|
2 |
+ |
|
3 |
+use strict; |
|
4 |
+use warnings; |
|
5 |
+ |
|
6 |
+use Carp 'croak'; |
|
7 |
+ |
|
8 |
+# Carp trust relationship |
|
9 |
+push @DBIx::Custom::QueryBuilder::CARP_NOT, __PACKAGE__; |
|
10 |
+ |
|
11 |
+sub expand_equal_tag { _expand_basic_tag('=', @_) } |
|
12 |
+sub expand_greater_than_equal_tag { _expand_basic_tag('>=', @_) } |
|
13 |
+sub expand_greater_than_tag { _expand_basic_tag('>', @_) } |
|
14 |
+ |
|
15 |
+sub expand_in_tag { |
|
16 |
+ my ($column, $count) = @_; |
|
17 |
+ |
|
18 |
+ # Check arguments |
|
19 |
+ croak qq{Column name and count of values must be specified in tag "{in }"} |
|
20 |
+ unless $column && $count && $count =~ /^\d+$/; |
|
21 |
+ |
|
22 |
+ # Part of statement |
|
23 |
+ my $s = "$column in ("; |
|
24 |
+ for (my $i = 0; $i < $count; $i++) { |
|
25 |
+ $s .= '?, '; |
|
26 |
+ } |
|
27 |
+ $s =~ s/, $//; |
|
28 |
+ $s .= ')'; |
|
29 |
+ |
|
30 |
+ # Columns |
|
31 |
+ my $columns = []; |
|
32 |
+ push @$columns, $column for (0 .. $count - 1); |
|
33 |
+ |
|
34 |
+ return [$s, $columns]; |
|
35 |
+} |
|
36 |
+ |
|
37 |
+sub expand_insert_param_tag { |
|
38 |
+ my @columns = @_; |
|
39 |
+ |
|
40 |
+ # Insert parameters |
|
41 |
+ my $s = '('; |
|
42 |
+ $s .= "$_, " for @columns; |
|
43 |
+ $s =~ s/, $//; |
|
44 |
+ $s .= ') '; |
|
45 |
+ $s .= 'values ('; |
|
46 |
+ $s .= "?, " for @columns; |
|
47 |
+ $s =~ s/, $//; |
|
48 |
+ $s .= ')'; |
|
49 |
+ |
|
50 |
+ return [$s, \@columns]; |
|
51 |
+} |
|
52 |
+ |
|
53 |
+sub expand_like_tag { _expand_basic_tag('like', @_) } |
|
54 |
+sub expand_lower_than_equal_tag { _expand_basic_tag('<=', @_) } |
|
55 |
+sub expand_lower_than_tag { _expand_basic_tag('<', @_) } |
|
56 |
+sub expand_not_equal_tag { _expand_basic_tag('<>', @_) } |
|
57 |
+ |
|
58 |
+sub expand_placeholder_tag { |
|
59 |
+ my $column = shift; |
|
60 |
+ |
|
61 |
+ # Check arguments |
|
62 |
+ croak qq{Column name must be specified in tag "{? }"} |
|
63 |
+ unless $column; |
|
64 |
+ |
|
65 |
+ return ['?', [$column]]; |
|
66 |
+} |
|
67 |
+ |
|
68 |
+sub expand_update_param_tag { |
|
69 |
+ my @columns = @_; |
|
70 |
+ |
|
71 |
+ # Update paramters |
|
72 |
+ my $s = 'set '; |
|
73 |
+ $s .= "$_ = ?, " for @columns; |
|
74 |
+ $s =~ s/, $//; |
|
75 |
+ |
|
76 |
+ return [$s, \@columns]; |
|
77 |
+} |
|
78 |
+ |
|
79 |
+sub _expand_basic_tag { |
|
80 |
+ my ($name, $column) = @_; |
|
81 |
+ |
|
82 |
+ # Check arguments |
|
83 |
+ croak qq{Column name must be specified in tag "{$name }"} |
|
84 |
+ unless $column; |
|
85 |
+ |
|
86 |
+ return ["$column $name ?", [$column]]; |
|
87 |
+} |
|
88 |
+ |
|
89 |
+1; |
|
90 |
+ |
|
91 |
+=head1 NAME |
|
92 |
+ |
|
93 |
+DBIx::Custom::TagProcessor - Tag processor |
|
94 |
+ |
... | ... |
@@ -16,10 +16,7 @@ BEGIN { |
16 | 16 |
} |
17 | 17 |
|
18 | 18 |
# Function for test name |
19 |
-my $test; |
|
20 |
-sub test { |
|
21 |
- $test = shift; |
|
22 |
-} |
|
19 |
+sub test { "# $_[0]\n" } |
|
23 | 20 |
|
24 | 21 |
# Constant varialbes for test |
25 | 22 |
my $CREATE_TABLE = { |
... | ... |
@@ -80,22 +77,22 @@ $result = $dbi->execute($query); |
80 | 77 |
while (my $row = $result->fetch) { |
81 | 78 |
push @rows, [@$row]; |
82 | 79 |
} |
83 |
-is_deeply(\@rows, [[1, 2], [3, 4]], "$test : fetch"); |
|
80 |
+is_deeply(\@rows, [[1, 2], [3, 4]], "fetch"); |
|
84 | 81 |
|
85 | 82 |
$result = $dbi->execute($query); |
86 | 83 |
@rows = (); |
87 | 84 |
while (my $row = $result->fetch_hash) { |
88 | 85 |
push @rows, {%$row}; |
89 | 86 |
} |
90 |
-is_deeply(\@rows, [{key1 => 1, key2 => 2}, {key1 => 3, key2 => 4}], "$test : fetch_hash"); |
|
87 |
+is_deeply(\@rows, [{key1 => 1, key2 => 2}, {key1 => 3, key2 => 4}], "fetch_hash"); |
|
91 | 88 |
|
92 | 89 |
$result = $dbi->execute($query); |
93 | 90 |
$rows = $result->fetch_all; |
94 |
-is_deeply($rows, [[1, 2], [3, 4]], "$test : fetch_all"); |
|
91 |
+is_deeply($rows, [[1, 2], [3, 4]], "fetch_all"); |
|
95 | 92 |
|
96 | 93 |
$result = $dbi->execute($query); |
97 | 94 |
$rows = $result->fetch_hash_all; |
98 |
-is_deeply($rows, [{key1 => 1, key2 => 2}, {key1 => 3, key2 => 4}], "$test : fetch_hash_all"); |
|
95 |
+is_deeply($rows, [{key1 => 1, key2 => 2}, {key1 => 3, key2 => 4}], "fetch_hash_all"); |
|
99 | 96 |
|
100 | 97 |
test 'Insert query return value'; |
101 | 98 |
$dbi->execute($DROP_TABLE->{0}); |
... | ... |
@@ -103,7 +100,7 @@ $dbi->execute($CREATE_TABLE->{0}); |
103 | 100 |
$source = "insert into table1 {insert_param key1 key2}"; |
104 | 101 |
$query = $dbi->create_query($source); |
105 | 102 |
$ret_val = $dbi->execute($query, param => {key1 => 1, key2 => 2}); |
106 |
-ok($ret_val, $test); |
|
103 |
+ok($ret_val); |
|
107 | 104 |
|
108 | 105 |
|
109 | 106 |
test 'Direct query'; |
... | ... |
@@ -113,7 +110,7 @@ $insert_SOURCE = "insert into table1 {insert_param key1 key2}"; |
113 | 110 |
$dbi->execute($insert_SOURCE, param => {key1 => 1, key2 => 2}); |
114 | 111 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
115 | 112 |
$rows = $result->fetch_hash_all; |
116 |
-is_deeply($rows, [{key1 => 1, key2 => 2}], $test); |
|
113 |
+is_deeply($rows, [{key1 => 1, key2 => 2}]); |
|
117 | 114 |
|
118 | 115 |
test 'Filter basic'; |
119 | 116 |
$dbi->execute($DROP_TABLE->{0}); |
... | ... |
@@ -127,7 +124,7 @@ $insert_query->filter({key1 => 'twice'}); |
127 | 124 |
$dbi->execute($insert_query, param => {key1 => 1, key2 => 2}); |
128 | 125 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
129 | 126 |
$rows = $result->filter({key2 => 'three_times'})->fetch_hash_all; |
130 |
-is_deeply($rows, [{key1 => 2, key2 => 6}], "$test : filter fetch_filter"); |
|
127 |
+is_deeply($rows, [{key1 => 2, key2 => 6}], "filter fetch_filter"); |
|
131 | 128 |
$dbi->execute($DROP_TABLE->{0}); |
132 | 129 |
|
133 | 130 |
test 'Filter in'; |
... | ... |
@@ -140,7 +137,7 @@ $select_query = $dbi->create_query($select_SOURCE); |
140 | 137 |
$select_query->filter({'table1.key1' => 'twice'}); |
141 | 138 |
$result = $dbi->execute($select_query, param => {'table1.key1' => [1,5], 'table1.key2' => [2,4]}); |
142 | 139 |
$rows = $result->fetch_hash_all; |
143 |
-is_deeply($rows, [{key1 => 2, key2 => 4}], "$test : filter"); |
|
140 |
+is_deeply($rows, [{key1 => 2, key2 => 4}], "filter"); |
|
144 | 141 |
|
145 | 142 |
test 'DBIx::Custom::SQLTemplate basic tag'; |
146 | 143 |
$dbi->execute($DROP_TABLE->{0}); |
... | ... |
@@ -152,13 +149,13 @@ $source = "select * from table1 where {= key1} and {<> key2} and {< key3} and {> |
152 | 149 |
$query = $dbi->create_query($source); |
153 | 150 |
$result = $dbi->execute($query, param => {key1 => 1, key2 => 3, key3 => 4, key4 => 3, key5 => 5}); |
154 | 151 |
$rows = $result->fetch_hash_all; |
155 |
-is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "$test : basic tag1"); |
|
152 |
+is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "basic tag1"); |
|
156 | 153 |
|
157 | 154 |
$source = "select * from table1 where {<= key1} and {like key2};"; |
158 | 155 |
$query = $dbi->create_query($source); |
159 | 156 |
$result = $dbi->execute($query, param => {key1 => 1, key2 => '%2%'}); |
160 | 157 |
$rows = $result->fetch_hash_all; |
161 |
-is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "$test : basic tag2"); |
|
158 |
+is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "basic tag2"); |
|
162 | 159 |
|
163 | 160 |
test 'DIB::Custom::SQLTemplate in tag'; |
164 | 161 |
$dbi->execute($DROP_TABLE->{0}); |
... | ... |
@@ -170,7 +167,7 @@ $source = "select * from table1 where {in key1 2};"; |
170 | 167 |
$query = $dbi->create_query($source); |
171 | 168 |
$result = $dbi->execute($query, param => {key1 => [9, 1]}); |
172 | 169 |
$rows = $result->fetch_hash_all; |
173 |
-is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "$test : basic"); |
|
170 |
+is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "basic"); |
|
174 | 171 |
|
175 | 172 |
test 'DBIx::Custom::SQLTemplate insert tag'; |
176 | 173 |
$dbi->execute("delete from table1"); |
... | ... |
@@ -179,7 +176,7 @@ $dbi->execute($insert_SOURCE, param => {key1 => 1, key2 => 2, key3 => 3, key4 => |
179 | 176 |
|
180 | 177 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
181 | 178 |
$rows = $result->fetch_hash_all; |
182 |
-is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "$test : basic"); |
|
179 |
+is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "basic"); |
|
183 | 180 |
|
184 | 181 |
test 'DBIx::Custom::SQLTemplate update tag'; |
185 | 182 |
$dbi->execute("delete from table1"); |
... | ... |
@@ -193,15 +190,15 @@ $dbi->execute($update_SOURCE, param => {key1 => 1, key2 => 1, key3 => 1, key4 => |
193 | 190 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
194 | 191 |
$rows = $result->fetch_hash_all; |
195 | 192 |
is_deeply($rows, [{key1 => 1, key2 => 1, key3 => 1, key4 => 1, key5 => 5}, |
196 |
- {key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10}], "$test : basic"); |
|
193 |
+ {key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10}], "basic"); |
|
197 | 194 |
|
198 | 195 |
test 'Error case'; |
199 | 196 |
eval {DBIx::Custom->connect(data_source => 'dbi:SQLit')}; |
200 |
-ok($@, "$test : connect error"); |
|
197 |
+ok($@, "connect error"); |
|
201 | 198 |
|
202 | 199 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
203 | 200 |
eval{$dbi->create_query("{p }")}; |
204 |
-ok($@, "$test : create_query invalid SQL template"); |
|
201 |
+ok($@, "create_query invalid SQL template"); |
|
205 | 202 |
|
206 | 203 |
test 'insert'; |
207 | 204 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
... | ... |
@@ -210,7 +207,7 @@ $dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}); |
210 | 207 |
$dbi->insert(table => 'table1', param => {key1 => 3, key2 => 4}); |
211 | 208 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
212 | 209 |
$rows = $result->fetch_hash_all; |
213 |
-is_deeply($rows, [{key1 => 1, key2 => 2}, {key1 => 3, key2 => 4}], "$test : basic"); |
|
210 |
+is_deeply($rows, [{key1 => 1, key2 => 2}, {key1 => 3, key2 => 4}], "basic"); |
|
214 | 211 |
|
215 | 212 |
$dbi->execute('delete from table1'); |
216 | 213 |
$dbi->register_filter( |
... | ... |
@@ -221,7 +218,7 @@ $dbi->default_bind_filter('twice'); |
221 | 218 |
$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}, filter => {key1 => 'three_times'}); |
222 | 219 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
223 | 220 |
$rows = $result->fetch_hash_all; |
224 |
-is_deeply($rows, [{key1 => 3, key2 => 4}], "$test : filter"); |
|
221 |
+is_deeply($rows, [{key1 => 3, key2 => 4}], "filter"); |
|
225 | 222 |
$dbi->default_bind_filter(undef); |
226 | 223 |
|
227 | 224 |
$dbi->execute($DROP_TABLE->{0}); |
... | ... |
@@ -231,7 +228,7 @@ $rows = $dbi->select(table => 'table1')->fetch_hash_all; |
231 | 228 |
is_deeply($rows, [{key1 => 1, key2 => 2}], 'insert append'); |
232 | 229 |
|
233 | 230 |
eval{$dbi->insert(table => 'table1', noexist => 1)}; |
234 |
-like($@, qr/noexist/, "$test: invalid argument"); |
|
231 |
+like($@, qr/noexist/, "invalid argument"); |
|
235 | 232 |
|
236 | 233 |
|
237 | 234 |
test 'update'; |
... | ... |
@@ -244,7 +241,7 @@ $result = $dbi->execute($SELECT_SOURCES->{0}); |
244 | 241 |
$rows = $result->fetch_hash_all; |
245 | 242 |
is_deeply($rows, [{key1 => 1, key2 => 11, key3 => 3, key4 => 4, key5 => 5}, |
246 | 243 |
{key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10}], |
247 |
- "$test : basic"); |
|
244 |
+ "basic"); |
|
248 | 245 |
|
249 | 246 |
$dbi->execute("delete from table1"); |
250 | 247 |
$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}); |
... | ... |
@@ -254,14 +251,14 @@ $result = $dbi->execute($SELECT_SOURCES->{0}); |
254 | 251 |
$rows = $result->fetch_hash_all; |
255 | 252 |
is_deeply($rows, [{key1 => 1, key2 => 12, key3 => 3, key4 => 4, key5 => 5}, |
256 | 253 |
{key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10}], |
257 |
- "$test : update key same as search key"); |
|
254 |
+ "update key same as search key"); |
|
258 | 255 |
|
259 | 256 |
$dbi->update(table => 'table1', param => {key2 => [12]}, where => {key2 => 2, key3 => 3}); |
260 | 257 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
261 | 258 |
$rows = $result->fetch_hash_all; |
262 | 259 |
is_deeply($rows, [{key1 => 1, key2 => 12, key3 => 3, key4 => 4, key5 => 5}, |
263 | 260 |
{key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10}], |
264 |
- "$test : update key same as search key : param is array ref"); |
|
261 |
+ "update key same as search key : param is array ref"); |
|
265 | 262 |
|
266 | 263 |
$dbi->execute("delete from table1"); |
267 | 264 |
$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}); |
... | ... |
@@ -273,15 +270,15 @@ $result = $dbi->execute($SELECT_SOURCES->{0}); |
273 | 270 |
$rows = $result->fetch_hash_all; |
274 | 271 |
is_deeply($rows, [{key1 => 1, key2 => 22, key3 => 3, key4 => 4, key5 => 5}, |
275 | 272 |
{key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10}], |
276 |
- "$test : filter"); |
|
273 |
+ "filter"); |
|
277 | 274 |
|
278 | 275 |
$result = $dbi->update(table => 'table1', param => {key2 => 11}, where => {key1 => 1}, append => ' '); |
279 | 276 |
|
280 | 277 |
eval{$dbi->update(table => 'table1', noexist => 1)}; |
281 |
-like($@, qr/noexist/, "$test: invalid argument"); |
|
278 |
+like($@, qr/noexist/, "invalid argument"); |
|
282 | 279 |
|
283 | 280 |
eval{$dbi->update(table => 'table1')}; |
284 |
-like($@, qr/where/, "$test: not contain where"); |
|
281 |
+like($@, qr/where/, "not contain where"); |
|
285 | 282 |
|
286 | 283 |
|
287 | 284 |
test 'update_all'; |
... | ... |
@@ -295,7 +292,7 @@ $result = $dbi->execute($SELECT_SOURCES->{0}); |
295 | 292 |
$rows = $result->fetch_hash_all; |
296 | 293 |
is_deeply($rows, [{key1 => 1, key2 => 20, key3 => 3, key4 => 4, key5 => 5}, |
297 | 294 |
{key1 => 6, key2 => 20, key3 => 8, key4 => 9, key5 => 10}], |
298 |
- "$test : filter"); |
|
295 |
+ "filter"); |
|
299 | 296 |
|
300 | 297 |
|
301 | 298 |
test 'delete'; |
... | ... |
@@ -306,7 +303,7 @@ $dbi->insert(table => 'table1', param => {key1 => 3, key2 => 4}); |
306 | 303 |
$dbi->delete(table => 'table1', where => {key1 => 1}); |
307 | 304 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
308 | 305 |
$rows = $result->fetch_hash_all; |
309 |
-is_deeply($rows, [{key1 => 3, key2 => 4}], "$test : basic"); |
|
306 |
+is_deeply($rows, [{key1 => 3, key2 => 4}], "basic"); |
|
310 | 307 |
|
311 | 308 |
$dbi->execute("delete from table1;"); |
312 | 309 |
$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}); |
... | ... |
@@ -315,7 +312,7 @@ $dbi->register_filter(twice => sub { $_[0] * 2 }); |
315 | 312 |
$dbi->delete(table => 'table1', where => {key2 => 1}, filter => {key2 => 'twice'}); |
316 | 313 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
317 | 314 |
$rows = $result->fetch_hash_all; |
318 |
-is_deeply($rows, [{key1 => 3, key2 => 4}], "$test : filter"); |
|
315 |
+is_deeply($rows, [{key1 => 3, key2 => 4}], "filter"); |
|
319 | 316 |
|
320 | 317 |
$dbi->delete(table => 'table1', where => {key1 => 1}, append => ' '); |
321 | 318 |
|
... | ... |
@@ -324,10 +321,10 @@ $dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}); |
324 | 321 |
$dbi->insert(table => 'table1', param => {key1 => 3, key2 => 4}); |
325 | 322 |
$dbi->delete(table => 'table1', where => {key1 => 1, key2 => 2}); |
326 | 323 |
$rows = $dbi->select(table => 'table1')->fetch_hash_all; |
327 |
-is_deeply($rows, [{key1 => 3, key2 => 4}], "$test : delete multi key"); |
|
324 |
+is_deeply($rows, [{key1 => 3, key2 => 4}], "delete multi key"); |
|
328 | 325 |
|
329 | 326 |
eval{$dbi->delete(table => 'table1', noexist => 1)}; |
330 |
-like($@, qr/noexist/, "$test: invalid argument"); |
|
327 |
+like($@, qr/noexist/, "invalid argument"); |
|
331 | 328 |
|
332 | 329 |
|
333 | 330 |
test 'delete error'; |
... | ... |
@@ -335,7 +332,7 @@ $dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
335 | 332 |
$dbi->execute($CREATE_TABLE->{0}); |
336 | 333 |
eval{$dbi->delete(table => 'table1')}; |
337 | 334 |
like($@, qr/"where" argument must be specified and contains the pairs of column name and value/, |
338 |
- "$test : where key-value pairs not specified"); |
|
335 |
+ "where key-value pairs not specified"); |
|
339 | 336 |
|
340 | 337 |
test 'delete_all'; |
341 | 338 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
... | ... |
@@ -345,7 +342,7 @@ $dbi->insert(table => 'table1', param => {key1 => 3, key2 => 4}); |
345 | 342 |
$dbi->delete_all(table => 'table1'); |
346 | 343 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
347 | 344 |
$rows = $result->fetch_hash_all; |
348 |
-is_deeply($rows, [], "$test : basic"); |
|
345 |
+is_deeply($rows, [], "basic"); |
|
349 | 346 |
|
350 | 347 |
|
351 | 348 |
test 'select'; |
... | ... |
@@ -355,27 +352,27 @@ $dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}); |
355 | 352 |
$dbi->insert(table => 'table1', param => {key1 => 3, key2 => 4}); |
356 | 353 |
$rows = $dbi->select(table => 'table1')->fetch_hash_all; |
357 | 354 |
is_deeply($rows, [{key1 => 1, key2 => 2}, |
358 |
- {key1 => 3, key2 => 4}], "$test : table"); |
|
355 |
+ {key1 => 3, key2 => 4}], "table"); |
|
359 | 356 |
|
360 | 357 |
$rows = $dbi->select(table => 'table1', column => ['key1'])->fetch_hash_all; |
361 |
-is_deeply($rows, [{key1 => 1}, {key1 => 3}], "$test : table and columns and where key"); |
|
358 |
+is_deeply($rows, [{key1 => 1}, {key1 => 3}], "table and columns and where key"); |
|
362 | 359 |
|
363 | 360 |
$rows = $dbi->select(table => 'table1', where => {key1 => 1})->fetch_hash_all; |
364 |
-is_deeply($rows, [{key1 => 1, key2 => 2}], "$test : table and columns and where key"); |
|
361 |
+is_deeply($rows, [{key1 => 1, key2 => 2}], "table and columns and where key"); |
|
365 | 362 |
|
366 | 363 |
$rows = $dbi->select(table => 'table1', where => ['{= key1} and {= key2}', {key1 => 1, key2 => 2}])->fetch_hash_all; |
367 |
-is_deeply($rows, [{key1 => 1, key2 => 2}], "$test : table and columns and where string"); |
|
364 |
+is_deeply($rows, [{key1 => 1, key2 => 2}], "table and columns and where string"); |
|
368 | 365 |
|
369 | 366 |
$rows = $dbi->select(table => 'table1', column => ['key1'], where => {key1 => 3})->fetch_hash_all; |
370 |
-is_deeply($rows, [{key1 => 3}], "$test : table and columns and where key"); |
|
367 |
+is_deeply($rows, [{key1 => 3}], "table and columns and where key"); |
|
371 | 368 |
|
372 | 369 |
$rows = $dbi->select(table => 'table1', append => "order by key1 desc limit 1")->fetch_hash_all; |
373 |
-is_deeply($rows, [{key1 => 3, key2 => 4}], "$test : append statement"); |
|
370 |
+is_deeply($rows, [{key1 => 3, key2 => 4}], "append statement"); |
|
374 | 371 |
|
375 | 372 |
$dbi->register_filter(decrement => sub { $_[0] - 1 }); |
376 | 373 |
$rows = $dbi->select(table => 'table1', where => {key1 => 2}, filter => {key1 => 'decrement'}) |
377 | 374 |
->fetch_hash_all; |
378 |
-is_deeply($rows, [{key1 => 1, key2 => 2}], "$test : filter"); |
|
375 |
+is_deeply($rows, [{key1 => 1, key2 => 2}], "filter"); |
|
379 | 376 |
|
380 | 377 |
$dbi->execute($CREATE_TABLE->{2}); |
381 | 378 |
$dbi->insert(table => 'table2', param => {key1 => 1, key3 => 5}); |
... | ... |
@@ -385,17 +382,17 @@ $rows = $dbi->select( |
385 | 382 |
where => {'table1.key2' => 2}, |
386 | 383 |
relation => {'table1.key1' => 'table2.key1'} |
387 | 384 |
)->fetch_hash_all; |
388 |
-is_deeply($rows, [{table1_key1 => 1, table2_key1 => 1, key2 => 2, key3 => 5}], "$test : relation : exists where"); |
|
385 |
+is_deeply($rows, [{table1_key1 => 1, table2_key1 => 1, key2 => 2, key3 => 5}], "relation : exists where"); |
|
389 | 386 |
|
390 | 387 |
$rows = $dbi->select( |
391 | 388 |
table => [qw/table1 table2/], |
392 | 389 |
column => ['table1.key1 as table1_key1', 'table2.key1 as table2_key1', 'key2', 'key3'], |
393 | 390 |
relation => {'table1.key1' => 'table2.key1'} |
394 | 391 |
)->fetch_hash_all; |
395 |
-is_deeply($rows, [{table1_key1 => 1, table2_key1 => 1, key2 => 2, key3 => 5}], "$test : relation : no exists where"); |
|
392 |
+is_deeply($rows, [{table1_key1 => 1, table2_key1 => 1, key2 => 2, key3 => 5}], "relation : no exists where"); |
|
396 | 393 |
|
397 | 394 |
eval{$dbi->select(table => 'table1', noexist => 1)}; |
398 |
-like($@, qr/noexist/, "$test: invalid argument"); |
|
395 |
+like($@, qr/noexist/, "invalid argument"); |
|
399 | 396 |
|
400 | 397 |
|
401 | 398 |
test 'fetch filter'; |
... | ... |
@@ -410,16 +407,16 @@ $dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}); |
410 | 407 |
$result = $dbi->select(table => 'table1'); |
411 | 408 |
$result->filter({key1 => 'three_times'}); |
412 | 409 |
$row = $result->fetch_hash_first; |
413 |
-is_deeply($row, {key1 => 3, key2 => 4}, "$test: default_fetch_filter and filter"); |
|
410 |
+is_deeply($row, {key1 => 3, key2 => 4}, "default_fetch_filter and filter"); |
|
414 | 411 |
|
415 | 412 |
test 'filters'; |
416 | 413 |
$dbi = DBIx::Custom->new; |
417 | 414 |
|
418 | 415 |
is($dbi->filters->{decode_utf8}->(encode_utf8('あ')), |
419 |
- 'あ', "$test : decode_utf8"); |
|
416 |
+ 'あ', "decode_utf8"); |
|
420 | 417 |
|
421 | 418 |
is($dbi->filters->{encode_utf8}->('あ'), |
422 |
- encode_utf8('あ'), "$test : encode_utf8"); |
|
419 |
+ encode_utf8('あ'), "encode_utf8"); |
|
423 | 420 |
|
424 | 421 |
test 'transaction'; |
425 | 422 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
... | ... |
@@ -430,7 +427,7 @@ $dbi->insert(table => 'table1', param => {key1 => 2, key2 => 3}); |
430 | 427 |
$dbi->dbh->commit; |
431 | 428 |
$result = $dbi->select(table => 'table1'); |
432 | 429 |
is_deeply(scalar $result->fetch_hash_all, [{key1 => 1, key2 => 2}, {key1 => 2, key2 => 3}], |
433 |
- "$test : commit"); |
|
430 |
+ "commit"); |
|
434 | 431 |
|
435 | 432 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
436 | 433 |
$dbi->execute($CREATE_TABLE->{0}); |
... | ... |
@@ -439,7 +436,7 @@ $dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}); |
439 | 436 |
$dbi->dbh->rollback; |
440 | 437 |
|
441 | 438 |
$result = $dbi->select(table => 'table1'); |
442 |
-ok(! $result->fetch_first, "$test: rollback"); |
|
439 |
+ok(! $result->fetch_first, "rollback"); |
|
443 | 440 |
|
444 | 441 |
test 'cache'; |
445 | 442 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
... | ... |
@@ -447,7 +444,7 @@ $dbi->execute($CREATE_TABLE->{0}); |
447 | 444 |
$source = 'select * from table1 where {= key1} and {= key2};'; |
448 | 445 |
$dbi->create_query($source); |
449 | 446 |
is_deeply($dbi->{_cached}->{$source}, |
450 |
- {sql => "select * from table1 where key1 = ? and key2 = ?;", columns => ['key1', 'key2']}, "$test : cache"); |
|
447 |
+ {sql => "select * from table1 where key1 = ? and key2 = ?;", columns => ['key1', 'key2']}, "cache"); |
|
451 | 448 |
|
452 | 449 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
453 | 450 |
$dbi->execute($CREATE_TABLE->{0}); |
... | ... |
@@ -462,32 +459,32 @@ $dbi->execute($CREATE_TABLE->{0}); |
462 | 459 |
{ |
463 | 460 |
local $Carp::Verbose = 0; |
464 | 461 |
eval{$dbi->execute('select * frm table1')}; |
465 |
- like($@, qr/\Qselect * frm table1;/, "$test : fail prepare"); |
|
466 |
- like($@, qr/\.t /, "$test: fail : not verbose"); |
|
462 |
+ like($@, qr/\Qselect * frm table1;/, "fail prepare"); |
|
463 |
+ like($@, qr/\.t /, "fail : not verbose"); |
|
467 | 464 |
} |
468 | 465 |
{ |
469 | 466 |
local $Carp::Verbose = 1; |
470 | 467 |
eval{$dbi->execute('select * frm table1')}; |
471 |
- like($@, qr/Custom.*\.t /s, "$test : fail : verbose"); |
|
468 |
+ like($@, qr/Custom.*\.t /s, "fail : verbose"); |
|
472 | 469 |
} |
473 | 470 |
|
474 | 471 |
eval{$dbi->execute('select * from table1', no_exists => 1)}; |
475 |
-like($@, qr/\Q"no_exists" is invalid argument/, "$test : invald SQL"); |
|
472 |
+like($@, qr/\Q"no_exists" is invalid argument/, "invald SQL"); |
|
476 | 473 |
|
477 | 474 |
$query = $dbi->create_query('select * from table1 where {= key1}'); |
478 | 475 |
$dbi->dbh->disconnect; |
479 | 476 |
eval{$dbi->execute($query, param => {key1 => {a => 1}})}; |
480 |
-ok($@, "$test: execute fail"); |
|
477 |
+ok($@, "execute fail"); |
|
481 | 478 |
|
482 | 479 |
{ |
483 | 480 |
local $Carp::Verbose = 0; |
484 | 481 |
eval{$dbi->create_query('select * from table1 where {0 key1}')}; |
485 |
- like($@, qr/\Q.t /, "$test : caller spec : not vebose"); |
|
482 |
+ like($@, qr/\Q.t /, "caller spec : not vebose"); |
|
486 | 483 |
} |
487 | 484 |
{ |
488 | 485 |
local $Carp::Verbose = 1; |
489 | 486 |
eval{$dbi->create_query('select * from table1 where {0 key1}')}; |
490 |
- like($@, qr/QueryBuilder.*\.t /s, "$test : caller spec : not vebose"); |
|
487 |
+ like($@, qr/QueryBuilder.*\.t /s, "caller spec : not vebose"); |
|
491 | 488 |
} |
492 | 489 |
|
493 | 490 |
|
... | ... |
@@ -507,7 +504,7 @@ $dbi->rollback if $@; |
507 | 504 |
|
508 | 505 |
$result = $dbi->select(table => 'table1'); |
509 | 506 |
$rows = $result->fetch_hash_all; |
510 |
-is_deeply($rows, [], "$test : rollback"); |
|
507 |
+is_deeply($rows, [], "rollback"); |
|
511 | 508 |
|
512 | 509 |
$dbi->begin_work; |
513 | 510 |
|
... | ... |
@@ -520,11 +517,11 @@ $dbi->commit unless $@; |
520 | 517 |
|
521 | 518 |
$result = $dbi->select(table => 'table1'); |
522 | 519 |
$rows = $result->fetch_hash_all; |
523 |
-is_deeply($rows, [{key1 => 1, key2 => 2}, {key1 => 3, key2 => 4}], "$test : commit"); |
|
520 |
+is_deeply($rows, [{key1 => 1, key2 => 2}, {key1 => 3, key2 => 4}], "commit"); |
|
524 | 521 |
|
525 | 522 |
$dbi->dbh->{AutoCommit} = 0; |
526 | 523 |
eval{ $dbi->begin_work }; |
527 |
-ok($@, "$test : exception"); |
|
524 |
+ok($@, "exception"); |
|
528 | 525 |
$dbi->dbh->{AutoCommit} = 1; |
529 | 526 |
|
530 | 527 |
|
... | ... |
@@ -543,12 +540,12 @@ $dbi->helper({ |
543 | 540 |
} |
544 | 541 |
}); |
545 | 542 |
|
546 |
-is($dbi->one, 1, "$test : first"); |
|
547 |
-is($dbi->two, 2, "$test : second"); |
|
548 |
-is($dbi->twice(5), 10 , "$test : second"); |
|
543 |
+is($dbi->one, 1, "first"); |
|
544 |
+is($dbi->two, 2, "second"); |
|
545 |
+is($dbi->twice(5), 10 , "second"); |
|
549 | 546 |
|
550 | 547 |
eval {$dbi->XXXXXX}; |
551 |
-like($@, qr/\QCan't locate object method "XXXXXX" via "DBIx::Custom"/, "$test : not exists"); |
|
548 |
+like($@, qr/\QCan't locate object method "XXXXXX" via "DBIx::Custom"/, "not exists"); |
|
552 | 549 |
|
553 | 550 |
test 'out filter'; |
554 | 551 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
... | ... |
@@ -561,10 +558,10 @@ $dbi->apply_filter( |
561 | 558 |
$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}); |
562 | 559 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
563 | 560 |
$row = $result->fetch_hash_first; |
564 |
-is_deeply($row, {key1 => 2, key2 => 6}, "$test : insert"); |
|
561 |
+is_deeply($row, {key1 => 2, key2 => 6}, "insert"); |
|
565 | 562 |
$result = $dbi->select(table => 'table1'); |
566 | 563 |
$row = $result->fetch_hash_first; |
567 |
-is_deeply($row, {key1 => 6, key2 => 12}, "$test : insert"); |
|
564 |
+is_deeply($row, {key1 => 6, key2 => 12}, "insert"); |
|
568 | 565 |
|
569 | 566 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
570 | 567 |
$dbi->execute($CREATE_TABLE->{0}); |
... | ... |
@@ -576,7 +573,7 @@ $dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}, filter => {key1 |
576 | 573 |
$dbi->update(table => 'table1', param => {key1 => 2}, where => {key2 => 2}); |
577 | 574 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
578 | 575 |
$row = $result->fetch_hash_first; |
579 |
-is_deeply($row, {key1 => 4, key2 => 2}, "$test : update"); |
|
576 |
+is_deeply($row, {key1 => 4, key2 => 2}, "update"); |
|
580 | 577 |
|
581 | 578 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
582 | 579 |
$dbi->execute($CREATE_TABLE->{0}); |
... | ... |
@@ -588,7 +585,7 @@ $dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, filter => {key1 |
588 | 585 |
$dbi->delete(table => 'table1', where => {key1 => 1}); |
589 | 586 |
$result = $dbi->execute($SELECT_SOURCES->{0}); |
590 | 587 |
$rows = $result->fetch_hash_all; |
591 |
-is_deeply($rows, [], "$test : delete"); |
|
588 |
+is_deeply($rows, [], "delete"); |
|
592 | 589 |
|
593 | 590 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
594 | 591 |
$dbi->execute($CREATE_TABLE->{0}); |
... | ... |
@@ -600,7 +597,7 @@ $dbi->insert(table => 'table1', param => {key1 => 2, key2 => 2}, filter => {key1 |
600 | 597 |
$result = $dbi->select(table => 'table1', where => {key1 => 1}); |
601 | 598 |
$result->filter({'key2' => 'twice'}); |
602 | 599 |
$rows = $result->fetch_hash_all; |
603 |
-is_deeply($rows, [{key1 => 4, key2 => 4}], "$test : select"); |
|
600 |
+is_deeply($rows, [{key1 => 4, key2 => 4}], "select"); |
|
604 | 601 |
|
605 | 602 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
606 | 603 |
$dbi->execute($CREATE_TABLE->{0}); |
... | ... |
@@ -613,7 +610,7 @@ $result = $dbi->execute("select * from table1 where {= key1} and {= key2};", |
613 | 610 |
param => {key1 => 1, key2 => 2}, |
614 | 611 |
table => ['table1']); |
615 | 612 |
$rows = $result->fetch_hash_all; |
616 |
-is_deeply($rows, [{key1 => 4, key2 => 2}], "$test : execute"); |
|
613 |
+is_deeply($rows, [{key1 => 4, key2 => 2}], "execute"); |
|
617 | 614 |
|
618 | 615 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
619 | 616 |
$dbi->execute($CREATE_TABLE->{0}); |
... | ... |
@@ -635,7 +632,7 @@ $result = $dbi->select( |
635 | 632 |
|
636 | 633 |
$result->filter({'key2' => 'twice'}); |
637 | 634 |
$rows = $result->fetch_hash_all; |
638 |
-is_deeply($rows, [{key2 => 4, key3 => 18}], "$test : select : join"); |
|
635 |
+is_deeply($rows, [{key2 => 4, key3 => 18}], "select : join"); |
|
639 | 636 |
|
640 | 637 |
$result = $dbi->select( |
641 | 638 |
table => ['table1', 'table2'], |
... | ... |
@@ -644,7 +641,7 @@ $result = $dbi->select( |
644 | 641 |
|
645 | 642 |
$result->filter({'key2' => 'twice'}); |
646 | 643 |
$rows = $result->fetch_hash_all; |
647 |
-is_deeply($rows, [{key2 => 4, key3 => 18}], "$test : select : join : omit"); |
|
644 |
+is_deeply($rows, [{key2 => 4, key3 => 18}], "select : join : omit"); |
|
648 | 645 |
|
649 | 646 |
test 'each_column'; |
650 | 647 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
... | ... |
@@ -668,7 +665,7 @@ is_deeply($infos, |
668 | 665 |
['table2', 'key1', 'key1'], |
669 | 666 |
['table2', 'key3', 'key3'] |
670 | 667 |
] |
671 |
- , $test |
|
668 |
+ |
|
672 | 669 |
); |
673 | 670 |
|
674 | 671 |
test 'table'; |
... | ... |
@@ -679,25 +676,25 @@ $table->insert(param => {key1 => 1, key2 => 2}); |
679 | 676 |
$table->insert(param => {key1 => 3, key2 => 4}); |
680 | 677 |
$rows = $table->select->fetch_hash_all; |
681 | 678 |
is_deeply($rows, [{key1 => 1, key2 => 2}, {key1 => 3, key2 => 4}], |
682 |
- "$test: select"); |
|
679 |
+ "select"); |
|
683 | 680 |
$rows = $table->select(where => {key2 => 2}, append => 'order by key1', |
684 | 681 |
column => ['key1', 'key2'])->fetch_hash_all; |
685 | 682 |
is_deeply($rows, [{key1 => 1, key2 => 2}], |
686 |
- "$test: insert insert select"); |
|
683 |
+ "insert insert select"); |
|
687 | 684 |
$table->update(param => {key1 => 3}, where => {key2 => 2}); |
688 | 685 |
$table->update(param => {key1 => 5}, where => {key2 => 4}); |
689 | 686 |
$rows = $table->select(where => {key2 => 2})->fetch_hash_all; |
690 | 687 |
is_deeply($rows, [{key1 => 3, key2 => 2}], |
691 |
- "$test: update"); |
|
688 |
+ "update"); |
|
692 | 689 |
$table->delete(where => {key2 => 2}); |
693 | 690 |
$rows = $table->select->fetch_hash_all; |
694 |
-is_deeply($rows, [{key1 => 5, key2 => 4}], "$test: delete"); |
|
691 |
+is_deeply($rows, [{key1 => 5, key2 => 4}], "delete"); |
|
695 | 692 |
$table->update_all(param => {key1 => 3}); |
696 | 693 |
$rows = $table->select->fetch_hash_all; |
697 |
-is_deeply($rows, [{key1 => 3, key2 => 4}], "$test: update_all"); |
|
694 |
+is_deeply($rows, [{key1 => 3, key2 => 4}], "update_all"); |
|
698 | 695 |
$table->delete_all; |
699 | 696 |
$rows = $table->select->fetch_hash_all; |
700 |
-is_deeply($rows, [], "$test: delete_all"); |
|
697 |
+is_deeply($rows, [], "delete_all"); |
|
701 | 698 |
|
702 | 699 |
$dbi->dbh->do($CREATE_TABLE->{2}); |
703 | 700 |
$dbi->table('table2', ppp => sub { |
... | ... |
@@ -705,14 +702,14 @@ $dbi->table('table2', ppp => sub { |
705 | 702 |
|
706 | 703 |
return $self->name; |
707 | 704 |
}); |
708 |
-is($dbi->table('table2')->ppp, 'table2', "$test : helper"); |
|
705 |
+is($dbi->table('table2')->ppp, 'table2', "helper"); |
|
709 | 706 |
|
710 | 707 |
$dbi->table('table2', {qqq => sub { |
711 | 708 |
my $self = shift; |
712 | 709 |
|
713 | 710 |
return $self->name; |
714 | 711 |
}}); |
715 |
-is($dbi->table('table2')->qqq, 'table2', "$test : helper"); |
|
712 |
+is($dbi->table('table2')->qqq, 'table2', "helper"); |
|
716 | 713 |
|
717 | 714 |
|
718 | 715 |
test 'limit'; |
... | ... |
@@ -737,19 +734,19 @@ $rows = $dbi->select( |
737 | 734 |
where => {key1 => 1}, |
738 | 735 |
append => "order by key2 {limit 1 0}" |
739 | 736 |
)->fetch_hash_all; |
740 |
-is_deeply($rows, [{key1 => 1, key2 => 2}], $test); |
|
737 |
+is_deeply($rows, [{key1 => 1, key2 => 2}]); |
|
741 | 738 |
$rows = $dbi->select( |
742 | 739 |
table => 'table1', |
743 | 740 |
where => {key1 => 1}, |
744 | 741 |
append => "order by key2 {limit 2 1}" |
745 | 742 |
)->fetch_hash_all; |
746 |
-is_deeply($rows, [{key1 => 1, key2 => 4},{key1 => 1, key2 => 6}], $test); |
|
743 |
+is_deeply($rows, [{key1 => 1, key2 => 4},{key1 => 1, key2 => 6}]); |
|
747 | 744 |
$rows = $dbi->select( |
748 | 745 |
table => 'table1', |
749 | 746 |
where => {key1 => 1}, |
750 | 747 |
append => "order by key2 {limit 1}" |
751 | 748 |
)->fetch_hash_all; |
752 |
-is_deeply($rows, [{key1 => 1, key2 => 2}], $test); |
|
749 |
+is_deeply($rows, [{key1 => 1, key2 => 2}]); |
|
753 | 750 |
|
754 | 751 |
test 'connect super'; |
755 | 752 |
{ |
... | ... |
@@ -772,12 +769,12 @@ test 'connect super'; |
772 | 769 |
$dbi = MyDBI->connect($NEW_ARGS->{0}); |
773 | 770 |
$dbi->execute($CREATE_TABLE->{0}); |
774 | 771 |
$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}); |
775 |
-is($dbi->select(table => 'table1')->fetch_hash_first->{key1}, 1, $test); |
|
772 |
+is($dbi->select(table => 'table1')->fetch_hash_first->{key1}, 1); |
|
776 | 773 |
|
777 | 774 |
$dbi = MyDBI->new($NEW_ARGS->{0}); |
778 | 775 |
$dbi->execute($CREATE_TABLE->{0}); |
779 | 776 |
$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2}); |
780 |
-is($dbi->select(table => 'table1')->fetch_hash_first->{key1}, 1, $test); |
|
777 |
+is($dbi->select(table => 'table1')->fetch_hash_first->{key1}, 1); |
|
781 | 778 |
|
782 | 779 |
|
783 | 780 |
test 'end_filter'; |
... | ... |
@@ -7,9 +7,7 @@ use DBIx::Custom::QueryBuilder; |
7 | 7 |
|
8 | 8 |
# Function for test name |
9 | 9 |
my $test; |
10 |
-sub test { |
|
11 |
- $test = shift; |
|
12 |
-} |
|
10 |
+sub test { "# $_[0]\n" } |
|
13 | 11 |
|
14 | 12 |
# Variables for test |
15 | 13 |
my $dbi; |
... | ... |
@@ -32,7 +30,7 @@ $dbi = DBIx::Custom->new( |
32 | 30 |
is_deeply($dbi,{user => 'a', password => 'b', data_source => 'c', |
33 | 31 |
filters => {f => 3}, default_bind_filter => 'f', |
34 | 32 |
default_fetch_filter => 'g', result_class => 'g', |
35 |
- query_builder => $query_builder}, $test); |
|
33 |
+ query_builder => $query_builder}); |
|
36 | 34 |
isa_ok($dbi, 'DBIx::Custom'); |
37 | 35 |
|
38 | 36 |
|
... | ... |
@@ -47,7 +45,7 @@ $dbi = DBIx::Custom::T1->new( |
47 | 45 |
fo => 30, |
48 | 46 |
}, |
49 | 47 |
); |
50 |
-is_deeply(scalar $dbi->filters, {fo => 30}, "$test : filters"); |
|
48 |
+is_deeply(scalar $dbi->filters, {fo => 30}, "filters"); |
|
51 | 49 |
|
52 | 50 |
test 'Sub sub class constructor default'; |
53 | 51 |
{ |
... | ... |
@@ -74,16 +72,16 @@ $dbi = DBIx::Custom::T1_3->new( |
74 | 72 |
f => 3, |
75 | 73 |
}, |
76 | 74 |
); |
77 |
-is_deeply($dbi->filters, {f => 3}, "$test : filters"); |
|
75 |
+is_deeply($dbi->filters, {f => 3}, "filters"); |
|
78 | 76 |
isa_ok($dbi, 'DBIx::Custom'); |
79 | 77 |
|
80 | 78 |
|
81 | 79 |
test 'register_filters'; |
82 | 80 |
$dbi = DBIx::Custom->new; |
83 | 81 |
$dbi->register_filter(a => sub {1}); |
84 |
-is($dbi->filters->{a}->(), 1, $test); |
|
82 |
+is($dbi->filters->{a}->(), 1); |
|
85 | 83 |
$dbi->register_filter({b => sub {2}}); |
86 |
-is($dbi->filters->{b}->(), 2, $test); |
|
84 |
+is($dbi->filters->{b}->(), 2); |
|
87 | 85 |
|
88 | 86 |
|
89 | 87 |
test 'expand'; |
... | ... |
@@ -102,4 +100,4 @@ test 'expand'; |
102 | 100 |
|
103 | 101 |
test 'invalid attribute name'; |
104 | 102 |
eval {$dbi = DBIx::Custom->new(a => 1) }; |
105 |
-like ($@, qr/"a" is invalid attribute name/, $test); |
|
103 |
+like ($@, qr/"a" is invalid attribute name/); |
... | ... |
@@ -10,11 +10,7 @@ plan skip_all => 'private MySQL test' unless $USER; |
10 | 10 |
plan 'no_plan'; |
11 | 11 |
|
12 | 12 |
# Function for test name |
13 |
-my $test; |
|
14 |
-sub test { |
|
15 |
- $test = shift; |
|
16 |
-} |
|
17 |
- |
|
13 |
+sub test { print "# $_[0]\n" } |
|
18 | 14 |
|
19 | 15 |
# Functions for tests |
20 | 16 |
sub connect_info { |
... | ... |
@@ -47,15 +43,15 @@ test 'connect'; |
47 | 43 |
$dbi = DBIx::Custom::MySQL->new(user => $USER, password => $PASSWORD, |
48 | 44 |
database => $DATABASE, host => 'localhost', port => '10000'); |
49 | 45 |
$dbi->connect; |
50 |
-like($dbi->data_source, qr/dbi:mysql:database=.*;host=localhost;port=10000;/, "$test : created data source"); |
|
51 |
-is(ref $dbi->dbh, 'DBI::db', $test); |
|
46 |
+like($dbi->data_source, qr/dbi:mysql:database=.*;host=localhost;port=10000;/, "created data source"); |
|
47 |
+is(ref $dbi->dbh, 'DBI::db'); |
|
52 | 48 |
|
53 | 49 |
test 'attributes'; |
54 | 50 |
$dbi = DBIx::Custom::MySQL->new; |
55 | 51 |
$dbi->host('a'); |
56 |
-is($dbi->host, 'a', "$test: host"); |
|
52 |
+is($dbi->host, 'a', "host"); |
|
57 | 53 |
$dbi->port('b'); |
58 |
-is($dbi->port, 'b', "$test: port"); |
|
54 |
+is($dbi->port, 'b', "port"); |
|
59 | 55 |
|
60 | 56 |
test 'limit'; |
61 | 57 |
$dbi = DBIx::Custom->connect( |
... | ... |
@@ -83,17 +79,17 @@ $rows = $dbi->select( |
83 | 79 |
where => {key1 => 1}, |
84 | 80 |
append => "order by key2 {limit 1 0}" |
85 | 81 |
)->fetch_hash_all; |
86 |
-is_deeply($rows, [{key1 => 1, key2 => 2}], $test); |
|
82 |
+is_deeply($rows, [{key1 => 1, key2 => 2}]); |
|
87 | 83 |
$rows = $dbi->select( |
88 | 84 |
table => 'table1', |
89 | 85 |
where => {key1 => 1}, |
90 | 86 |
append => "order by key2 {limit 2 1}" |
91 | 87 |
)->fetch_hash_all; |
92 |
-is_deeply($rows, [{key1 => 1, key2 => 4},{key1 => 1, key2 => 6}], $test); |
|
88 |
+is_deeply($rows, [{key1 => 1, key2 => 4},{key1 => 1, key2 => 6}]); |
|
93 | 89 |
$rows = $dbi->select( |
94 | 90 |
table => 'table1', |
95 | 91 |
where => {key1 => 1}, |
96 | 92 |
append => "order by key2 {limit 1}" |
97 | 93 |
)->fetch_hash_all; |
98 |
-is_deeply($rows, [{key1 => 1, key2 => 2}], $test); |
|
94 |
+is_deeply($rows, [{key1 => 1, key2 => 2}]); |
|
99 | 95 |
$dbi->delete_all(table => 'table1'); |
... | ... |
@@ -5,10 +5,7 @@ use warnings; |
5 | 5 |
use DBIx::Custom::Query; |
6 | 6 |
|
7 | 7 |
# Function for test name |
8 |
-my $test; |
|
9 |
-sub test{ |
|
10 |
- $test = shift; |
|
11 |
-} |
|
8 |
+sub test{ "# $_[0]\n" } |
|
12 | 9 |
|
13 | 10 |
# Variables for test |
14 | 11 |
my $query; |
... | ... |
@@ -22,8 +19,8 @@ $query = DBIx::Custom::Query->new( |
22 | 19 |
fetch_filter => 'f', |
23 | 20 |
); |
24 | 21 |
|
25 |
-is($query->sql, 'a', "$test : sql"); |
|
26 |
-is($query->columns, 'b', "$test : columns "); |
|
27 |
-is($query->filter, 'c', "$test : filter"); |
|
28 |
-is($query->sth, 'e', "$test : sth"); |
|
22 |
+is($query->sql, 'a', "sql"); |
|
23 |
+is($query->columns, 'b', "columns "); |
|
24 |
+is($query->filter, 'c', "filter"); |
|
25 |
+is($query->sth, 'e', "sth"); |
|
29 | 26 |
|
... | ... |
@@ -6,10 +6,7 @@ use Test::More 'no_plan'; |
6 | 6 |
use DBIx::Custom::QueryBuilder; |
7 | 7 |
|
8 | 8 |
# Function for test name |
9 |
-my $test; |
|
10 |
-sub test{ |
|
11 |
- $test = shift; |
|
12 |
-} |
|
9 |
+sub test{ "# $_[0]\n" } |
|
13 | 10 |
|
14 | 11 |
# Variable for test |
15 | 12 |
my $datas; |
... | ... |
@@ -59,8 +56,8 @@ for (my $i = 0; $i < @$datas; $i++) { |
59 | 56 |
my $data = $datas->[$i]; |
60 | 57 |
my $builder = DBIx::Custom::QueryBuilder->new; |
61 | 58 |
my $query = $builder->build_query($data->{source}); |
62 |
- is($query->{sql}, $data->{sql_expected}, "$test : $data->{name} : sql"); |
|
63 |
- is_deeply($query->{columns}, $data->{columns_expected}, "$test : $data->{name} : columns"); |
|
59 |
+ is($query->{sql}, $data->{sql_expected}, "$data->{name} : sql"); |
|
60 |
+ is_deeply($query->{columns}, $data->{columns_expected}, "$data->{name} : columns"); |
|
64 | 61 |
} |
65 | 62 |
|
66 | 63 |
|
... | ... |
@@ -78,8 +75,8 @@ $ret_val = $builder->register_tag_processor( |
78 | 75 |
); |
79 | 76 |
|
80 | 77 |
$query = $builder->build_query("{p a b}"); |
81 |
-is($query->{sql}, "? a b;", "$test : register_tag_processor sql"); |
|
82 |
-is_deeply($query->{columns}, [2], "$test : register_tag_processor columns"); |
|
78 |
+is($query->{sql}, "? a b;", "register_tag_processor sql"); |
|
79 |
+is_deeply($query->{columns}, [2], "register_tag_processor columns"); |
|
83 | 80 |
isa_ok($ret_val, 'DBIx::Custom::QueryBuilder'); |
84 | 81 |
|
85 | 82 |
|
... | ... |
@@ -87,31 +84,31 @@ test "Tag processor error case"; |
87 | 84 |
$builder = DBIx::Custom::QueryBuilder->new; |
88 | 85 |
|
89 | 86 |
eval{$builder->build_query('{? }')}; |
90 |
-like($@, qr/\QColumn name must be specified in tag "{? }"/, "$test : ? not arguments"); |
|
87 |
+like($@, qr/\QColumn name must be specified in tag "{? }"/, "? not arguments"); |
|
91 | 88 |
|
92 | 89 |
eval{$builder->build_query("{a }")}; |
93 |
-like($@, qr/\QTag "a" in "{a }" is not registered/, "$test : tag_processor not exist"); |
|
90 |
+like($@, qr/\QTag "a" in "{a }" is not registered/, "tag_processor not exist"); |
|
94 | 91 |
|
95 | 92 |
$builder->register_tag_processor({ |
96 | 93 |
q => 'string' |
97 | 94 |
}); |
98 | 95 |
|
99 | 96 |
eval{$builder->build_query("{q}", {})}; |
100 |
-like($@, qr/Tag processor "q" must be sub reference/, "$test : tag_processor not code ref"); |
|
97 |
+like($@, qr/Tag processor "q" must be sub reference/, "tag_processor not code ref"); |
|
101 | 98 |
|
102 | 99 |
$builder->register_tag_processor({ |
103 | 100 |
r => sub {} |
104 | 101 |
}); |
105 | 102 |
|
106 | 103 |
eval{$builder->build_query("{r}")}; |
107 |
-like($@, qr/\QTag processor "r" must return [STRING, ARRAY_REFERENCE]/, "$test : tag processor return noting"); |
|
104 |
+like($@, qr/\QTag processor "r" must return [STRING, ARRAY_REFERENCE]/, "tag processor return noting"); |
|
108 | 105 |
|
109 | 106 |
$builder->register_tag_processor({ |
110 | 107 |
s => sub { return ["a", ""]} |
111 | 108 |
}); |
112 | 109 |
|
113 | 110 |
eval{$builder->build_query("{s}")}; |
114 |
-like($@, qr/\QTag processor "s" must return [STRING, ARRAY_REFERENCE]/, "$test : tag processor return not array columns"); |
|
111 |
+like($@, qr/\QTag processor "s" must return [STRING, ARRAY_REFERENCE]/, "tag processor return not array columns"); |
|
115 | 112 |
|
116 | 113 |
$builder->register_tag_processor( |
117 | 114 |
t => sub {return ["a", []]} |
... | ... |
@@ -126,47 +123,47 @@ $builder->register_tag_processor( |
126 | 123 |
} |
127 | 124 |
); |
128 | 125 |
eval{$builder->build_query("{a}")}; |
129 |
-like($@, qr/\QPlaceholder count in "? ? ?" must be same as column count 1/, "$test : placeholder count is invalid"); |
|
126 |
+like($@, qr/\QPlaceholder count in "? ? ?" must be same as column count 1/, "placeholder count is invalid"); |
|
130 | 127 |
|
131 | 128 |
|
132 | 129 |
test 'Default tag processor Error case'; |
133 | 130 |
eval{$builder->build_query("{= }")}; |
134 |
-like($@, qr/Column name must be specified in tag "{= }"/, "$test : basic '=' : key not exist"); |
|
131 |
+like($@, qr/Column name must be specified in tag "{= }"/, "basic '=' : key not exist"); |
|
135 | 132 |
|
136 | 133 |
eval{$builder->build_query("{in }")}; |
137 |
-like($@, qr/Column name and count of values must be specified in tag "{in }"/, "$test : in : key not exist"); |
|
134 |
+like($@, qr/Column name and count of values must be specified in tag "{in }"/, "in : key not exist"); |
|
138 | 135 |
|
139 | 136 |
eval{$builder->build_query("{in a}")}; |
140 | 137 |
like($@, qr/\QColumn name and count of values must be specified in tag "{in }"/, |
141 |
- "$test : in : key not exist"); |
|
138 |
+ "in : key not exist"); |
|
142 | 139 |
|
143 | 140 |
eval{$builder->build_query("{in a r}")}; |
144 | 141 |
like($@, qr/\QColumn name and count of values must be specified in tag "{in }"/, |
145 |
- "$test : in : key not exist"); |
|
142 |
+ "in : key not exist"); |
|
146 | 143 |
|
147 | 144 |
test 'variouse source'; |
148 | 145 |
$source = "a {= b} c \\{ \\} {= \\{} {= \\}} d;"; |
149 | 146 |
$query = $builder->build_query($source); |
150 |
-is($query->sql, 'a b = ? c { } { = ? } = ? d;', "$test : basic : 1"); |
|
147 |
+is($query->sql, 'a b = ? c { } { = ? } = ? d;', "basic : 1"); |
|
151 | 148 |
|
152 | 149 |
$source = "abc;"; |
153 | 150 |
$query = $builder->build_query($source); |
154 |
-is($query->sql, 'abc;', "$test : basic : 2"); |
|
151 |
+is($query->sql, 'abc;', "basic : 2"); |
|
155 | 152 |
|
156 | 153 |
$source = "{= a}"; |
157 | 154 |
$query = $builder->build_query($source); |
158 |
-is($query->sql, 'a = ?;', "$test : only tag"); |
|
155 |
+is($query->sql, 'a = ?;', "only tag"); |
|
159 | 156 |
|
160 | 157 |
$source = "000;"; |
161 | 158 |
$query = $builder->build_query($source); |
162 |
-is($query->sql, '000;', "$test : contain 0 value"); |
|
159 |
+is($query->sql, '000;', "contain 0 value"); |
|
163 | 160 |
|
164 | 161 |
$source = "a {= b} }"; |
165 | 162 |
eval{$builder->build_query($source)}; |
166 |
-like($@, qr/unexpected "}"/, "$test : error : 1"); |
|
163 |
+like($@, qr/unexpected "}"/, "error : 1"); |
|
167 | 164 |
|
168 | 165 |
$source = "a {= {}"; |
169 | 166 |
eval{$builder->build_query($source)}; |
170 |
-like($@, qr/unexpected "{"/, "$test : error : 2"); |
|
167 |
+like($@, qr/unexpected "{"/, "error : 2"); |
|
171 | 168 |
|
172 | 169 |
|
... | ... |
@@ -14,10 +14,7 @@ BEGIN { |
14 | 14 |
} |
15 | 15 |
|
16 | 16 |
# Function for test name |
17 |
-my $test; |
|
18 |
-sub test { |
|
19 |
- $test = shift; |
|
20 |
-} |
|
17 |
+sub test { "# $_[0]\n" } |
|
21 | 18 |
|
22 | 19 |
# Constant varialbes for test |
23 | 20 |
my $CREATE_TABLE = { |
... | ... |
@@ -37,25 +34,25 @@ my $id; |
37 | 34 |
test 'connect_memory'; |
38 | 35 |
$dbi = DBIx::Custom::SQLite->connect_memory; |
39 | 36 |
$ret_val = $dbi->execute($CREATE_TABLE->{0}); |
40 |
-ok(defined $ret_val, $test); |
|
37 |
+ok(defined $ret_val); |
|
41 | 38 |
$dbi->insert(table => 'table1', param => {key1 => 'a', key2 => 2}); |
42 | 39 |
$rows = $dbi->select(table => 'table1', where => {key1 => 'a'})->fetch_hash_all; |
43 |
-is_deeply($rows, [{key1 => 'a', key2 => 2}], "$test : select rows"); |
|
40 |
+is_deeply($rows, [{key1 => 'a', key2 => 2}], "select rows"); |
|
44 | 41 |
|
45 | 42 |
test 'connect'; |
46 | 43 |
$db_file = 't/test.db'; |
47 | 44 |
unlink $db_file if -f $db_file; |
48 | 45 |
$dbi = DBIx::Custom::SQLite->new(database => $db_file); |
49 | 46 |
$dbi->connect; |
50 |
-ok(-f $db_file, "$test : database file"); |
|
47 |
+ok(-f $db_file, "database file"); |
|
51 | 48 |
$ret_val = $dbi->execute($CREATE_TABLE->{0}); |
52 |
-ok(defined $ret_val, "$test : database"); |
|
49 |
+ok(defined $ret_val, "database"); |
|
53 | 50 |
$dbi->dbh->disconnect; |
54 | 51 |
|
55 | 52 |
unlink $db_file if -f $db_file; |
56 | 53 |
$dbi = DBIx::Custom::SQLite->connect(database => $db_file); |
57 |
-ok($dbi, "$test : called from class name"); |
|
54 |
+ok($dbi, "called from class name"); |
|
58 | 55 |
|
59 | 56 |
unlink $db_file if -f $db_file; |
60 | 57 |
$dbi = DBIx::Custom::SQLite->connect(data_source => "dbi:SQLite:dbname=$db_file"); |
61 |
-ok($dbi, "$test : specified data source"); |
|
58 |
+ok($dbi, "specified data source"); |
... | ... |
@@ -8,8 +8,7 @@ plan 'no_plan'; |
8 | 8 |
use DBIx::Custom; |
9 | 9 |
|
10 | 10 |
# Function for test name |
11 |
-my $test; |
|
12 |
-sub test {$test = shift } |
|
11 |
+sub test { "# $_[0]\n" } |
|
13 | 12 |
|
14 | 13 |
# Constant varialbes for test |
15 | 14 |
my $CREATE_TABLE = { |
... | ... |
@@ -36,7 +35,7 @@ $dbi->execute($CREATE_TABLE->{0}); |
36 | 35 |
} |
37 | 36 |
$result = $dbi->select(table => 'table1'); |
38 | 37 |
is_deeply(scalar $result->fetch_hash_all, [{key1 => 1, key2 => 2}, {key1 => 2, key2 => 3}], |
39 |
- "$test : commit"); |
|
38 |
+ "commit"); |
|
40 | 39 |
|
41 | 40 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
42 | 41 |
$dbi->execute($CREATE_TABLE->{0}); |
... | ... |
@@ -49,5 +48,5 @@ $dbi->execute($CREATE_TABLE->{0}); |
49 | 48 |
} |
50 | 49 |
} |
51 | 50 |
$result = $dbi->select(table => 'table1'); |
52 |
-ok(! $result->fetch_first, "$test: rollback"); |
|
51 |
+ok(! $result->fetch_first, "rollback"); |
|
53 | 52 |
|
... | ... |
@@ -1,18 +0,0 @@ |
1 |
-use strict; |
|
2 |
-use warnings; |
|
3 |
-use Test::More; |
|
4 |
- |
|
5 |
-# Ensure a recent version of Test::Pod::Coverage |
|
6 |
-my $min_tpc = 1.08; |
|
7 |
-eval "use Test::Pod::Coverage $min_tpc"; |
|
8 |
-plan skip_all => "Test::Pod::Coverage $min_tpc required for testing POD coverage" |
|
9 |
- if $@; |
|
10 |
- |
|
11 |
-# Test::Pod::Coverage doesn't require a minimum Pod::Coverage version, |
|
12 |
-# but older versions don't recognize some common documentation styles |
|
13 |
-my $min_pc = 0.18; |
|
14 |
-eval "use Pod::Coverage $min_pc"; |
|
15 |
-plan skip_all => "Pod::Coverage $min_pc required for testing POD coverage" |
|
16 |
- if $@; |
|
17 |
- |
|
18 |
-all_pod_coverage_ok({also_private => [qr/default_bind_filter|default_fetch_filter|default_filter/]}); |