[BACK]Return to tags.t CVS log [TXT][DIR] Up to [local] / todotxt / Text-Todo-REST-API / t / GET

File: [local] / todotxt / Text-Todo-REST-API / t / GET / tags.t (download)

Revision 1.5, Tue Jan 26 04:30:13 2010 UTC (14 years, 5 months ago) by andrew
Branch: MAIN
Changes since 1.4: +12 -7 lines

Make GET actions a plugin so it can be expanded.

#===============================================================================
#
#         FILE:  GET/tags.t
#
#  DESCRIPTION:  Test Text::Todo::REST::API
#
#       AUTHOR:  Andrew Fresh (AAF), andrew@cpan.org
#      COMPANY:  Red River Communications
#      CREATED:  01/07/10 19:11
#     REVISION:  $AFresh1: tags.t,v 1.5 2010/01/26 04:30:13 andrew Exp $
#===============================================================================

use strict;
use warnings;

use Test::More tests => 8;
my $api_class;
my $class;

BEGIN {
    $api_class = 'Text::Todo::REST::API';
    $class = 'Text::Todo::REST::API::Actions::GET';

    use_ok( $api_class, "use $api_class" );
    use_ok( $class, "use $class" );
}

diag("Testing GET tags $class $Text::Todo::REST::API::Actions::GET::VERSION");

my $api = new_ok( $api_class, [ { todo_dir => 't/lists' } ] );
my $action = new_ok( $class );

my %tags = (
    project => ['delete', 'dos', 'uno'],
    context => ['one', 'two'],
);

foreach my $tag (keys %tags) {
    my $tags;
    ok( $tags = $action->get_tags($api->_todo, $tag), "Get [$tag] tags" );
    is_deeply( $tags, $tags{$tag}, 'got expected ' . $tag . 's' );
}