From 4074f2d6a9bcfb33f0da7933ac26c5df0d2f21f7 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Thu, 5 Jul 2012 10:15:42 -0500 Subject: modernize, cleanup, etc --- t/random-word-nocache.t | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 t/random-word-nocache.t (limited to 't/random-word-nocache.t') diff --git a/t/random-word-nocache.t b/t/random-word-nocache.t new file mode 100644 index 0000000..0c7fb1d --- /dev/null +++ b/t/random-word-nocache.t @@ -0,0 +1,34 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use Test::More; + +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", 4 if $word_file eq ''; + + my $wl = Games::Word::Wordlist->new($word_file, cache => 0); + my $word = $wl->random_word; + 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"); + + $word = $wl->random_word(4); + is(length $word, 4, "testing random_word with a given length"); + + is($wl->random_word(999), undef, + "random_word returns undef if no words are found"); +} + +done_testing; -- cgit v1.2.3-54-g00ecf