summaryrefslogtreecommitdiffstats
path: root/t/020-random-word.t
diff options
context:
space:
mode:
Diffstat (limited to 't/020-random-word.t')
-rw-r--r--t/020-random-word.t23
1 files changed, 11 insertions, 12 deletions
diff --git a/t/020-random-word.t b/t/020-random-word.t
index de4b47f..ad2c830 100644
--- a/t/020-random-word.t
+++ b/t/020-random-word.t
@@ -1,23 +1,22 @@
#!perl -T
use strict;
use warnings;
-use Test::More tests => 3;
-use Test::Exception;
+use Test::More tests => 5;
use Games::Word::Wordlist;
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");
+
+my $word = $wl->random_word;
ok(defined($word), "random_word actually returned a word");
+like($word, qr/^(foo|bar|baz|quux)$/,
+ "testing that the word is actually in the word list");
-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");
+$word = $wl->random_word(4);
is($word, 'quux', "testing random_word with a given length");
-$word = $wl->random_word(3)
+
+$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");
+
+is($wl->random_word(5), undef,
+ "random_word returns undef if no words are found");