summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjluehrs2 <jluehrs2@uiuc.edu>2008-02-01 04:58:50 -0500
committerjluehrs2 <jluehrs2@uiuc.edu>2008-02-01 04:58:50 -0500
commit452313f92901f9b460fd38d44630a6b47dcad748 (patch)
tree36c7dabc8b832b7b4b83c925702ee30a03a4af3a
parentc7d6a6698132f9cab275ebae35979431e3556521 (diff)
downloadgames-word-452313f92901f9b460fd38d44630a6b47dcad748.tar.gz
games-word-452313f92901f9b460fd38d44630a6b47dcad748.zip
make only the tests that require it use the system word file
-rw-r--r--t/020-random-word.t29
-rw-r--r--t/021-is-word.t20
-rw-r--r--t/024-anagrams.t20
3 files changed, 21 insertions, 48 deletions
diff --git a/t/020-random-word.t b/t/020-random-word.t
index 3b070b9..98a17df 100644
--- a/t/020-random-word.t
+++ b/t/020-random-word.t
@@ -5,24 +5,11 @@ 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);
- 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")
-}
+my $wl = Games::Word::Wordlist->new(['foo', 'bar', 'baz']);
+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");
+
+like($word, qr/^(foo|bar|baz)$/,
+ "testing that the word is actually in the word list")
diff --git a/t/021-is-word.t b/t/021-is-word.t
index 076a0e9..88784f3 100644
--- a/t/021-is-word.t
+++ b/t/021-is-word.t
@@ -5,17 +5,9 @@ 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);
- 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");
-}
+my $wl = Games::Word::Wordlist->new(['foo', 'bar', 'baz']);
+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");
diff --git a/t/024-anagrams.t b/t/024-anagrams.t
index 3ae578e..fc95f42 100644
--- a/t/024-anagrams.t
+++ b/t/024-anagrams.t
@@ -6,18 +6,12 @@ use Test::Exception;
use Test::Deep;
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';
+my @words = qw/stop spot tops post posts stops spartan poster pot sop spa/;
-SKIP: {
- skip "Can't find a system word list", 2 if $word_file eq '';
+my $wl = Games::Word::Wordlist->new(\@words);
+my @anagrams;
+lives_ok(sub { @anagrams = $wl->anagrams("stop") },
+ "testing calling random_word with a good word list");
- my $wl = Games::Word::Wordlist->new($word_file);
- my @anagrams;
- lives_ok(sub { @anagrams = $wl->anagrams("stop") },
- "testing calling random_word with a good word list");
-
- cmp_deeply(\@anagrams, bag('stop', 'spot', 'tops', 'post'),
- "anagrams returns the correct words");
-}
+cmp_deeply(\@anagrams, bag('stop', 'spot', 'tops', 'post'),
+ "anagrams returns the correct words");