summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjluehrs2 <jluehrs2@uiuc.edu>2008-01-31 18:27:18 -0500
committerjluehrs2 <jluehrs2@uiuc.edu>2008-01-31 18:27:18 -0500
commitcf852c833582af1fe915c8a846568316d2e45ac6 (patch)
tree930a018335df526da7f377512b546df4b2d27d67
parent6715794690afdd05f6145165bc2e6e851eb30fb8 (diff)
downloadgames-word-cf852c833582af1fe915c8a846568316d2e45ac6.tar.gz
games-word-cf852c833582af1fe915c8a846568316d2e45ac6.zip
add tests for using the wordlist without keeping an in-memory cache
-rw-r--r--t/022-random-word-nocache.t28
-rw-r--r--t/023-is-word-nocache.t21
2 files changed, 49 insertions, 0 deletions
diff --git a/t/022-random-word-nocache.t b/t/022-random-word-nocache.t
new file mode 100644
index 0000000..9f9551a
--- /dev/null
+++ b/t/022-random-word-nocache.t
@@ -0,0 +1,28 @@
+#!perl -T
+use strict;
+use warnings;
+use Test::More tests => 3;
+use Test::Exception;
+use Games::Word::Wordlist;
+
+my $word_file = '';
+$word_file = '/usr/dict/words' if -r '/usr/dict/words';
+$word_file = '/usr/share/dict/words' if -r '/usr/share/dict/words';
+
+SKIP: {
+ skip "Can't find a system word list", 2 if $word_file eq '';
+
+ my $wl = Games::Word::Wordlist->new($word_file, cache => 0);
+ my $word;
+ lives_ok(sub { $word = $wl->random_word },
+ "testing calling random_word with a good word list");
+ ok(defined($word), "random_word actually returned a word");
+
+ 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/023-is-word-nocache.t b/t/023-is-word-nocache.t
new file mode 100644
index 0000000..38d7aaa
--- /dev/null
+++ b/t/023-is-word-nocache.t
@@ -0,0 +1,21 @@
+#!perl -T
+use strict;
+use warnings;
+use Test::More tests => 2;
+use Test::Exception;
+use Games::Word::Wordlist;
+
+my $word_file = '';
+$word_file = '/usr/dict/words' if -r '/usr/dict/words';
+$word_file = '/usr/share/dict/words' if -r '/usr/share/dict/words';
+
+SKIP: {
+ skip "Can't find a system word list", 2 if $word_file eq '';
+
+ my $wl = Games::Word::Wordlist->new($word_file, cache => 0);
+ my $result;
+ lives_ok(sub { $result = $wl->is_word($wl->random_word) },
+ "testing calling is_word");
+ ok($result,
+ "testing checking to see if a random word from the word list is a word");
+}