rename these tests to "basic", and test both mutable and immutable paths
[gitmo/MooseX-UndefTolerant.git] / t / basic.t
diff --git a/t/basic.t b/t/basic.t
new file mode 100644 (file)
index 0000000..17c4e17
--- /dev/null
+++ b/t/basic.t
@@ -0,0 +1,38 @@
+use Test::More;
+use Test::Moose;
+
+{
+package Foo;
+use Moose;
+use MooseX::UndefTolerant;
+
+has 'bar' => (
+    is => 'ro',
+    isa => 'Num',
+    predicate => 'has_bar'
+);
+
+__PACKAGE__->meta->make_immutable;
+}
+
+package main;
+
+with_immutable {
+    {
+        my $foo = Foo->new;
+        ok(!$foo->has_bar);
+    }
+
+    {
+        my $foo = Foo->new(bar => undef);
+        ok(!$foo->has_bar);
+    }
+
+    {
+        my $foo = Foo->new(bar => 1234);
+        cmp_ok($foo->bar, 'eq', 1234);
+        ok($foo->has_bar);
+    }
+} 'Foo';
+
+done_testing;