diff options
author | jluehrs2 <jluehrs2@uiuc.edu> | 2008-02-01 01:32:52 -0500 |
---|---|---|
committer | jluehrs2 <jluehrs2@uiuc.edu> | 2008-02-01 01:32:52 -0500 |
commit | c7d6a6698132f9cab275ebae35979431e3556521 (patch) | |
tree | b9002b49c7a0fb3796553a2c8f11ca60e7c99eb5 /t | |
parent | 752338be7644da462041deea124252c006c68248 (diff) | |
download | games-word-c7d6a6698132f9cab275ebae35979431e3556521.tar.gz games-word-c7d6a6698132f9cab275ebae35979431e3556521.zip |
add and fix some tests
Diffstat (limited to 't')
-rw-r--r-- | t/001-basic.t | 15 | ||||
-rw-r--r-- | t/002-system-wordlist.t | 21 | ||||
-rw-r--r-- | t/003-array-wordlist.t | 16 |
3 files changed, 41 insertions, 11 deletions
diff --git a/t/001-basic.t b/t/001-basic.t index cf5c216..e325ff3 100644 --- a/t/001-basic.t +++ b/t/001-basic.t @@ -5,14 +5,7 @@ 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 wordlist", 2 unless $word_file; - my $wl; - lives_ok { $wl = Games::Word::Wordlist->new($word_file) } - "creating a wordlist succeeds"; - isa_ok $wl, "Games::Word::Wordlist"; -} +my $wl; +lives_ok { $wl = Games::Word::Wordlist->new([]) } + "creating a wordlist succeeds"; +isa_ok $wl, "Games::Word::Wordlist"; diff --git a/t/002-system-wordlist.t b/t/002-system-wordlist.t new file mode 100644 index 0000000..ee83e46 --- /dev/null +++ b/t/002-system-wordlist.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; + lives_ok { $wl = Games::Word::Wordlist->new($word_file) } + "opening a word list from a file doesn't die"; + open my $fh, '<', $word_file or die "Couldn't open $word_file"; + for (<$fh>) {} + is($wl->words, $., "we read in the correct number of words"); +} diff --git a/t/003-array-wordlist.t b/t/003-array-wordlist.t new file mode 100644 index 0000000..148f761 --- /dev/null +++ b/t/003-array-wordlist.t @@ -0,0 +1,16 @@ +#!perl -T +use strict; +use warnings; +use Test::More tests => 4; +use Test::Exception; +use Games::Word::Wordlist; + +my @words = qw/foo bar baz/; +my $wl; +lives_ok { $wl = Games::Word::Wordlist->new(\@words) } + "creating a wordlist from an array succeeds"; +is($wl->words, 3, "created the correct number of words in the word list"); +$wl->add_words(['zab', 'rab', 'oof', 'foo']); +is($wl->words, 6, "adding words results in the correct number of words"); +$wl->remove_words(qw/rab foo quux/); +is($wl->words, 4, "deleting words results in the correct number of words"); |