Tests for New Modules
authorJohn Beppu <john.beppu@liblime.com>
Tue, 3 Feb 2009 22:02:10 +0000 (16:02 -0600)
committerGalen Charlton <galen.charlton@liblime.com>
Wed, 4 Feb 2009 19:58:22 +0000 (13:58 -0600)
- KohaTest::Category
- KohaTest::ItemCirculationAlertPreference
- KohaTest::ItemType
- KohaTest::Message

Signed-off-by: Daniel Sweeney <daniel.sweeney@liblime.com>
Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
t/lib/KohaTest/Category.pm [new file with mode: 0644]
t/lib/KohaTest/ItemCirculationAlertPreference.pm [new file with mode: 0644]
t/lib/KohaTest/ItemType.pm [new file with mode: 0644]
t/lib/KohaTest/Message.pm [new file with mode: 0644]

diff --git a/t/lib/KohaTest/Category.pm b/t/lib/KohaTest/Category.pm
new file mode 100644 (file)
index 0000000..3febfda
--- /dev/null
@@ -0,0 +1,23 @@
+package KohaTest::Category;
+use base qw( KohaTest );
+
+use strict;
+use warnings;
+
+use Test::More;
+
+use C4::Category;
+sub testing_class { 'C4::Category' };
+
+
+sub methods : Test( 1 ) {
+    my $self = shift;
+    my @methods = qw( 
+                    new
+                    all
+                );
+    
+    can_ok( $self->testing_class, @methods );    
+}
+
+1;
diff --git a/t/lib/KohaTest/ItemCirculationAlertPreference.pm b/t/lib/KohaTest/ItemCirculationAlertPreference.pm
new file mode 100644 (file)
index 0000000..3094b33
--- /dev/null
@@ -0,0 +1,27 @@
+package KohaTest::ItemCirculationAlertPreference;
+use base qw( KohaTest );
+
+use strict;
+use warnings;
+
+use Test::More;
+
+use C4::ItemCirculationAlertPreference;
+sub testing_class { 'C4::ItemCirculationAlertPreference' };
+
+
+sub methods : Test( 1 ) {
+    my $self = shift;
+    my @methods = qw( 
+                    new
+                    create
+                    delete
+                    is_enabled_for
+                    find
+                    grid
+                );
+    
+    can_ok( $self->testing_class, @methods );    
+}
+
+1;
diff --git a/t/lib/KohaTest/ItemType.pm b/t/lib/KohaTest/ItemType.pm
new file mode 100644 (file)
index 0000000..2474ce3
--- /dev/null
@@ -0,0 +1,23 @@
+package KohaTest::ItemType;
+use base qw( KohaTest );
+
+use strict;
+use warnings;
+
+use Test::More;
+
+use C4::ItemType;
+sub testing_class { 'C4::ItemType' };
+
+
+sub methods : Test( 1 ) {
+    my $self = shift;
+    my @methods = qw( 
+                    new
+                    all
+                );
+    
+    can_ok( $self->testing_class, @methods );    
+}
+
+1;
diff --git a/t/lib/KohaTest/Message.pm b/t/lib/KohaTest/Message.pm
new file mode 100644 (file)
index 0000000..d1d822f
--- /dev/null
@@ -0,0 +1,52 @@
+package KohaTest::Message;
+use base qw( KohaTest );
+
+use strict;
+use warnings;
+
+use Test::More;
+
+use C4::Message;
+sub testing_class { 'C4::Message' };
+
+
+sub methods : Test( 1 ) {
+    my $self = shift;
+    my @methods = qw( 
+                    new
+                    find
+                    find_last_message
+                    enqueue
+                    update
+                    metadata
+                    render_metadata
+                    append
+                );
+    
+    can_ok( $self->testing_class, @methods );    
+}
+
+sub test_metadata : Test( 1 ) {
+    my $self = shift;
+    my $message = C4::Message->new;
+    $message->metadata({
+        header => "Header",
+        body   => [],
+        footer => "Footer",
+    });
+    like($message->{metadata}, qr{^---}, "The metadata attribute should be serialized as YAML.");
+}
+
+sub test_append : Test( 1 ) {
+    my $self = shift;
+    my $message = C4::Message->new;
+    $message->metadata({
+        header => "Header",
+        body   => [],
+        footer => "Footer",
+    });
+    $message->append("foo");
+    is($message->metadata->{body}->[0], "foo", "Appending a string should add an element to metadata.body.");
+}
+
+1;