diff options
author | jluehrs2 <jluehrs2@uiuc.edu> | 2008-02-02 15:29:06 -0500 |
---|---|---|
committer | jluehrs2 <jluehrs2@uiuc.edu> | 2008-02-02 15:29:06 -0500 |
commit | ddcf4c23fdacd7dfeba8c46d990524409f8de36e (patch) | |
tree | c9dedb2b8624df2b8df9d92fd8b0af6029ae9e75 /t | |
parent | 11804cb65d772bd4bc833807b67752647acf190f (diff) | |
download | games-word-ddcf4c23fdacd7dfeba8c46d990524409f8de36e.tar.gz games-word-ddcf4c23fdacd7dfeba8c46d990524409f8de36e.zip |
update tests to test specific length words
Diffstat (limited to 't')
-rw-r--r-- | t/020-random-word.t | 10 | ||||
-rw-r--r-- | t/022-random-word-nocache.t | 12 |
2 files changed, 18 insertions, 4 deletions
diff --git a/t/020-random-word.t b/t/020-random-word.t index 98a17df..de4b47f 100644 --- a/t/020-random-word.t +++ b/t/020-random-word.t @@ -5,7 +5,7 @@ use Test::More tests => 3; use Test::Exception; use Games::Word::Wordlist; -my $wl = Games::Word::Wordlist->new(['foo', 'bar', 'baz']); +my $wl = Games::Word::Wordlist->new(['foo', 'bar', 'baz', 'quux']); my $word; lives_ok(sub { $word = $wl->random_word }, "testing calling random_word with a good word list"); @@ -13,3 +13,11 @@ 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") +lives_ok(sub { $word = $wl->random_word(4) }, + "random_word doesn't die when given a length"); +is($word, 'quux', "testing random_word with a given length"); +$word = $wl->random_word(3) +like($word, qr/^(foo|bar|baz)$/, + "testing that the word was correct"); +throws_ok(sub { $wl->random_word(5) }, qr/No words of length 5 in word list/, + "random_word dies if no words are found"); diff --git a/t/022-random-word-nocache.t b/t/022-random-word-nocache.t index 9f9551a..3054955 100644 --- a/t/022-random-word-nocache.t +++ b/t/022-random-word-nocache.t @@ -1,7 +1,7 @@ #!perl -T use strict; use warnings; -use Test::More tests => 3; +use Test::More tests => 6; use Test::Exception; use Games::Word::Wordlist; @@ -10,7 +10,7 @@ $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 ''; + skip "Can't find a system word list", 6 if $word_file eq ''; my $wl = Games::Word::Wordlist->new($word_file, cache => 0); my $word; @@ -24,5 +24,11 @@ SKIP: { chomp; $passed = 1 if $word eq $_; } - ok($passed, "testing that the word is actually in the word list") + ok($passed, "testing that the word is actually in the word list"); + lives_ok(sub { $word = $wl->random_word(4) }, + "random_word doesn't die when given a length"); + is(length $word, 4, "testing random_word with a given length"); + throws_ok(sub { $wl->random_word(35) }, + qr/No words of length 35 in word list/, + "random_word dies if no words are found"); } |