summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjluehrs2 <jluehrs2@uiuc.edu>2008-01-31 05:16:21 -0500
committerjluehrs2 <jluehrs2@uiuc.edu>2008-01-31 05:16:21 -0500
commitda1a4dd02847b6225bc08d546699e74e786e2671 (patch)
treefcda40470ab812c9807047ff6c2e42cb53a09438
parent9c8d26ee7735c117b664d28915947d39f2593efd (diff)
downloadgames-word-da1a4dd02847b6225bc08d546699e74e786e2671.tar.gz
games-word-da1a4dd02847b6225bc08d546699e74e786e2671.zip
tests
-rw-r--r--t/020-random-word.t30
-rw-r--r--t/021-is-word.t25
2 files changed, 55 insertions, 0 deletions
diff --git a/t/020-random-word.t b/t/020-random-word.t
new file mode 100644
index 0000000..dd18c92
--- /dev/null
+++ b/t/020-random-word.t
@@ -0,0 +1,30 @@
+#!perl -T
+use strict;
+use warnings;
+use Test::More tests => 3;
+use Test::Exception;
+use Games::Word qw/set_word_list random_word/;
+
+my $word_file = '';
+$word_file = '/usr/dict/words' if (-f '/usr/dict/words');
+$word_file = '/usr/share/dict/words' if (-f '/usr/share/dict/words');
+
+throws_ok(sub { random_word }, qr/Couldn't open word list/,
+ "testing calling a function before setting a word list");
+
+SKIP: {
+ skip "Can't find a system word list", 2 if $word_file eq '';
+
+ set_word_list $word_file;
+ my $word;
+ lives_ok(sub { $word = random_word },
+ "testing calling random_word with a good word list");
+
+ open my $fh, '<', $word_file;
+ my $passed = 0;
+ for (<$fh>) {
+ chomp;
+ $passed = 1 if $word eq $_;
+ }
+ ok($passed, "testing that the word is actually in the word list")
+}
diff --git a/t/021-is-word.t b/t/021-is-word.t
new file mode 100644
index 0000000..1f4bebb
--- /dev/null
+++ b/t/021-is-word.t
@@ -0,0 +1,25 @@
+#!perl -T
+use strict;
+use warnings;
+use Test::More tests => 3;
+use Test::Exception;
+use Games::Word qw/set_word_list random_word is_word/;
+
+my $word_file = '';
+$word_file = '/usr/dict/words' if (-f '/usr/dict/words');
+$word_file = '/usr/share/dict/words' if (-f '/usr/share/dict/words');
+
+throws_ok(sub { is_word }, qr/Couldn't open word list/,
+ "testing calling a function before setting a word list");
+
+SKIP: {
+ skip "Can't find a system word list", 2 if $word_file eq '';
+
+ set_word_list $word_file;
+
+ my $result;
+ lives_ok(sub { $result = is_word random_word },
+ "testing calling random_word with a good word list");
+ ok($result,
+ "testing checking to see if a random word from the word list is a word");
+}