Showing 2 changed files with 56 additions and 56 deletions
+56 -2
t/common.t
... ...
@@ -16,6 +16,8 @@ sub test { print "# $_[0]\n" }
16 16
 
17 17
 # Constant
18 18
 my $create_table1 = $dbi->create_table1;
19
+my $create_table1_2 = $dbi->create_table1_2;
20
+
19 21
 
20 22
 # Variable
21 23
 # Variables
... ...
@@ -127,7 +129,7 @@ is_deeply($rows, [{key1 => 2, key2 => 4}], "filter");
127 129
 
128 130
 test 'DBIx::Custom::SQLTemplate basic tag';
129 131
 $dbi->execute('drop table table1');
130
-$dbi->execute($dbi->create_table1_2);
132
+$dbi->execute($create_table1_2);
131 133
 $dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5});
132 134
 $dbi->insert(table => 'table1', param => {key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10});
133 135
 
... ...
@@ -151,7 +153,7 @@ is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}], "bas
151 153
 
152 154
 test 'DIB::Custom::SQLTemplate in tag';
153 155
 $dbi->execute('drop table table1');
154
-$dbi->execute($dbi->create_table1_2);
156
+$dbi->execute($create_table1_2);
155 157
 $dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5});
156 158
 $dbi->insert(table => 'table1', param => {key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10});
157 159
 
... ...
@@ -184,4 +186,56 @@ $rows = $result->all;
184 186
 is_deeply($rows, [{key1 => 1, key2 => 1, key3 => 1, key4 => 1, key5 => 5},
185 187
                   {key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10}], "basic");
186 188
 
189
+test 'Named placeholder';
190
+$dbi->execute('drop table table1');
191
+$dbi->execute($create_table1_2);
192
+$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5});
193
+$dbi->insert(table => 'table1', param => {key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10});
194
+
195
+$source = "select * from table1 where key1 = :key1 and key2 = :key2";
196
+$result = $dbi->execute($source, param => {key1 => 1, key2 => 2});
197
+$rows = $result->all;
198
+is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}]);
199
+
200
+$source = "select * from table1 where key1 = \n:key1\n and key2 = :key2";
201
+$result = $dbi->execute($source, param => {key1 => 1, key2 => 2});
202
+$rows = $result->all;
203
+is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}]);
204
+
205
+$source = "select * from table1 where key1 = :key1 or key1 = :key1";
206
+$result = $dbi->execute($source, param => {key1 => [1, 2]});
207
+$rows = $result->all;
208
+is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}]);
209
+
210
+$source = "select * from table1 where key1 = :table1.key1 and key2 = :table1.key2";
211
+$result = $dbi->execute(
212
+    $source,
213
+    param => {'table1.key1' => 1, 'table1.key2' => 1},
214
+    filter => {'table1.key2' => sub { $_[0] * 2 }}
215
+);
216
+$rows = $result->all;
217
+is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}]);
218
+
219
+$dbi->execute('drop table table1');
220
+$dbi->execute($create_table1);
221
+$dbi->insert(table => 'table1', param => {key1 => '2011-10-14 12:19:18', key2 => 2});
222
+$source = "select * from table1 where key1 = '2011-10-14 12:19:18' and key2 = :key2";
223
+$result = $dbi->execute(
224
+    $source,
225
+    param => {'key2' => 2},
226
+);
227
+
228
+$rows = $result->all;
229
+is_deeply($rows, [{key1 => '2011-10-14 12:19:18', key2 => 2}]);
230
+
231
+$dbi->delete_all(table => 'table1');
232
+$dbi->insert(table => 'table1', param => {key1 => 'a:b c:d', key2 => 2});
233
+$source = "select * from table1 where key1 = 'a\\:b c\\:d' and key2 = :key2";
234
+$result = $dbi->execute(
235
+    $source,
236
+    param => {'key2' => 2},
237
+);
238
+$rows = $result->all;
239
+is_deeply($rows, [{key1 => 'a:b c:d', key2 => 2}]);
240
+
187 241
 1;
-54
t/sqlite.t
... ...
@@ -57,60 +57,6 @@ my $join;
57 57
 # Prepare table
58 58
 $dbi = DBIx::Custom->connect(%memory);
59 59
 
60
-test 'Named placeholder';
61
-#$dbi->execute('drop table table1');
62
-$dbi->execute('create table table1 (key1 char(255), key2 char(255), key3 char(255), key4 char(255), key5 char(255));');
63
-$dbi->insert(table => 'table1', param => {key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5});
64
-$dbi->insert(table => 'table1', param => {key1 => 6, key2 => 7, key3 => 8, key4 => 9, key5 => 10});
65
-
66
-$source = "select * from table1 where key1 = :key1 and key2 = :key2";
67
-$result = $dbi->execute($source, param => {key1 => 1, key2 => 2});
68
-$rows = $result->all;
69
-is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}]);
70
-
71
-$source = "select * from table1 where key1 = \n:key1\n and key2 = :key2";
72
-$result = $dbi->execute($source, param => {key1 => 1, key2 => 2});
73
-$rows = $result->all;
74
-is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}]);
75
-
76
-$source = "select * from table1 where key1 = :key1 or key1 = :key1";
77
-$result = $dbi->execute($source, param => {key1 => [1, 2]});
78
-$rows = $result->all;
79
-is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}]);
80
-
81
-$source = "select * from table1 where key1 = :table1.key1 and key2 = :table1.key2";
82
-$result = $dbi->execute(
83
-    $source,
84
-    param => {'table1.key1' => 1, 'table1.key2' => 1},
85
-    filter => {'table1.key2' => sub { $_[0] * 2 }}
86
-);
87
-$rows = $result->all;
88
-is_deeply($rows, [{key1 => 1, key2 => 2, key3 => 3, key4 => 4, key5 => 5}]);
89
-
90
-$dbi->execute('drop table table1');
91
-$dbi->execute($create_table_default);
92
-$dbi->insert(table => 'table1', param => {key1 => '2011-10-14 12:19:18', key2 => 2});
93
-$source = "select * from table1 where key1 = '2011-10-14 12:19:18' and key2 = :key2";
94
-$result = $dbi->execute(
95
-    $source,
96
-    param => {'key2' => 2},
97
-);
98
-
99
-$rows = $result->all;
100
-is_deeply($rows, [{key1 => '2011-10-14 12:19:18', key2 => 2}]);
101
-
102
-$dbi = DBIx::Custom->connect(%memory);
103
-$dbi->execute($create_table_default);
104
-$dbi->insert(table => 'table1', param => {key1 => 'a:b c:d', key2 => 2});
105
-$source = "select * from table1 where key1 = 'a\\:b c\\:d' and key2 = :key2";
106
-$result = $dbi->execute(
107
-    $source,
108
-    param => {'key2' => 2},
109
-);
110
-$rows = $result->all;
111
-is_deeply($rows, [{key1 => 'a:b c:d', key2 => 2}]);
112
-
113
-
114 60
 test 'Error case';
115 61
 eval {DBIx::Custom->connect(dsn => 'dbi:SQLit')};
116 62
 ok($@, "connect error");