mirror of
https://github.com/djcb/mu.git
synced 2024-06-29 07:51:04 +02:00
56 lines
1.7 KiB
Perl
56 lines
1.7 KiB
Perl
|
#!/usr/bin/perl
|
||
|
##
|
||
|
# 003-contacts.t - exercise 'contacts' command
|
||
|
##
|
||
|
# Copyright (C) 2015 by attila <attila@stalphonsos.com>
|
||
|
#
|
||
|
# Permission to use, copy, modify, and distribute this software for any
|
||
|
# purpose with or without fee is hereby granted, provided that the above
|
||
|
# copyright notice and this permission notice appear in all copies.
|
||
|
#
|
||
|
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
|
||
|
# WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
|
||
|
# WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
|
||
|
# AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
|
||
|
# DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||
|
# PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
|
||
|
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||
|
# PERFORMANCE OF THIS SOFTWARE.
|
||
|
##
|
||
|
use strict;
|
||
|
use warnings;
|
||
|
use mup;
|
||
|
use Test::More tests => 10;
|
||
|
|
||
|
use t::lib;
|
||
|
|
||
|
my $mu = mup->new(verbose => $ENV{'TEST_VERBOSE'});
|
||
|
ok($mu,"constructor won");
|
||
|
my $c = $mu->contacts;
|
||
|
ok(ref($c) eq 'HASH',"contacts returned a hashref");
|
||
|
ok(ref($c->{'contacts'}) eq 'ARRAY',"contacts returned an array");
|
||
|
my @clist = map { $_->{'mail'} } @{$c->{'contacts'}};
|
||
|
ok(scalar(@clist) == 5,"right number of contacts in array".join(", ",@clist));
|
||
|
sub have {
|
||
|
my($a,@l) = @_;
|
||
|
my $n = grep { $_ eq $a } @l;
|
||
|
ok($n, "$a is in the list");
|
||
|
}
|
||
|
have('tech@openbsd.org',@clist);
|
||
|
have('habeus@stalphonsos.com',@clist);
|
||
|
have('guenther@gmail.com',@clist);
|
||
|
have('mark.kettenis@xs4all.nl',@clist);
|
||
|
have('slashdot@newsletters.slashdot.org',@clist);
|
||
|
ok($mu->finish(),"finish won");
|
||
|
|
||
|
##
|
||
|
# Local variables:
|
||
|
# mode: perl
|
||
|
# tab-width: 4
|
||
|
# perl-indent-level: 4
|
||
|
# perl-continued-statement-offset: 4
|
||
|
# indent-tabs-mode: nil
|
||
|
# comment-column: 40
|
||
|
# End:
|
||
|
##
|