_is_deteministic_value
[dbsrgits/DBIx-Class.git] / t / 96_is_deteministic_value.t
diff --git a/t/96_is_deteministic_value.t b/t/96_is_deteministic_value.t
new file mode 100644 (file)
index 0000000..6e04252
--- /dev/null
@@ -0,0 +1,65 @@
+use strict;
+use warnings;
+
+# 6 tests
+
+use Test::More qw(no_plan);
+use lib qw(t/lib);
+use DBICTest;
+use DateTime;
+use DateTime::Format::Strptime;
+use Test::Exception;
+
+my $schema = DBICTest->init_schema();
+my $artist_rs = $schema->resultset('Artist');
+my $cd_rs = $schema->resultset('CD');
+
+ {
+   my $cd;
+   lives_ok {
+     $cd = $cd_rs->search({ year => {'=' => 1999}})->create
+       ({
+         artist => {name => 'Guillermo1'},
+         title => 'Guillermo 1',
+        });
+   };
+   is($cd->year, 1999);
+ }
+
+ {
+   my $formatter = DateTime::Format::Strptime->new(pattern => '%Y');
+   my $dt = DateTime->new(year => 2006, month => 06, day => 06,
+                          formatter => $formatter );
+   my $cd;
+   lives_ok {
+     $cd = $cd_rs->search({ year => $dt})->create
+       ({
+         artist => {name => 'Guillermo2'},
+         title => 'Guillermo 2',
+        });
+   };
+   is($cd->year, 2006);
+ }
+
+
+{
+  my $artist;
+  lives_ok {
+    $artist = $artist_rs->search({ name => {'!=' => 'Killer'}})
+      ->create({artistid => undef});
+  };
+  is($artist->name, undef);
+}
+
+
+{
+  my $artist;
+  lives_ok {
+    $artist = $artist_rs->search({ name => [ q/ some stupid names here/]})
+      ->create({artistid => undef});
+  };
+  is($artist->name, undef);
+}
+
+
+1;