Merge branch 'master' into topic/constructor_rewrite
[dbsrgits/DBIx-Class.git] / t / sqlmaker / op_value.t
diff --git a/t/sqlmaker/op_value.t b/t/sqlmaker/op_value.t
new file mode 100644 (file)
index 0000000..ceb441e
--- /dev/null
@@ -0,0 +1,36 @@
+use strict;
+use warnings;
+
+use Test::More;
+
+use lib qw(t/lib);
+use DBIC::SqlMakerTest;
+
+use_ok('DBICTest');
+
+my $schema = DBICTest->init_schema();
+
+my $sql_maker = $schema->storage->sql_maker;
+
+for my $q ('', '"') {
+
+  $sql_maker->quote_char($q);
+
+  is_same_sql_bind (
+    \[ $sql_maker->select ('artist', '*', { arr1 => { -value => [1,2] }, arr2 => { '>', { -value => [3,4] } }, field => [5,6] } ) ],
+    "SELECT *
+      FROM ${q}artist${q}
+      WHERE ${q}arr1${q} = ? AND
+            ${q}arr2${q} > ? AND
+            ( ${q}field${q} = ? OR ${q}field${q} = ? )
+    ",
+    [
+      [ arr1 => [1,2] ],
+      [ arr2 => [3,4] ],
+      [ field => 5 ],
+      [ field => 6 ],
+    ],
+  );
+}
+
+done_testing;