=================================================================== RCS file: /cvs/todotxt/Text-Todo-REST-API/t/GET/entry.t,v retrieving revision 1.4 retrieving revision 1.6 diff -u -r1.4 -r1.6 --- todotxt/Text-Todo-REST-API/t/GET/entry.t 2010/01/24 04:38:21 1.4 +++ todotxt/Text-Todo-REST-API/t/GET/entry.t 2010/01/26 03:51:49 1.6 @@ -7,13 +7,13 @@ # AUTHOR: Andrew Fresh (AAF), andrew@cpan.org # COMPANY: Red River Communications # CREATED: 01/07/10 19:11 -# REVISION: $AFresh1: entry.t,v 1.3 2010/01/23 07:15:40 andrew Exp $ +# REVISION: $AFresh1: entry.t,v 1.5 2010/01/24 04:39:12 andrew Exp $ #=============================================================================== use strict; use warnings; -use Test::More tests => 50; +use Test::More tests => 87; my $class; @@ -26,71 +26,32 @@ my $api = new_ok( $class, [ { todo_dir => 't/lists' } ] ); -my $list_should_be = [ - { 'text' => '(A) entry 1 @one +uno', - 'md5' => '931e0831c31a70928b29de55778dc294', - 'line' => 1 - }, - { 'text' => 'entry 2 @two +dos', - 'md5' => 'b38dde8029c047e81379d9de581a6251', - 'line' => 2 - }, - { 'text' => '', - 'md5' => 'd41d8cd98f00b204e9800998ecf8427e', - 'line' => 3 - }, - { 'text' => 'x completed entry 4', - 'md5' => '8de0a2b65a50d5e30e84ad48af46fa78', - 'line' => 4 - }, - { 'text' => '(B) entry 5 is priority', - 'md5' => 'c1692dfbf3b5829b6bce44b1a1614980', - 'line' => 5 - }, - { 'text' => 'entry 6 +delete', - 'md5' => 'e1f6bf867f75aa019063782554407d02', - 'line' => 6 - } -]; +my $list_should_be; +ok( $list_should_be = $api->GET('todo_file'), 'Get todo_file' ); -foreach my $e ( @{$list_should_be} ) { - my $entry; - ok( $entry = $api->get_entry( $api->_todo, $e->{line} ), - "by line get_entry($e->{line})" - ); - is_deeply( $entry, $e, 'got correct entry' ); +my @types = ( 'line', 'md5' ); - $entry = undef; - ok( $entry = $api->get_entry( $api->_todo, $e->{md5} ), - "by md5 get_entry($e->{md5})" - ); - is_deeply( $entry, $e, 'got correct entry' ); +foreach my $e ( @{ $list_should_be->data } ) { + foreach my $type (@types) { + my $entry; + ok( $entry = $api->get_entry( $api->_todo, $e->{$type} ), + "by $type get_entry($e->{$type})" ); + is_deeply( $entry, $e, "Entry Matches" ); - my $response; - ok( $response = $api->GET( '/todo_file/entry/' . $e->{line} ), - "by line GET($e->{line})" - ); - $entry = undef; - ok( $entry = $response->data, 'Get data from response' ); - is_deeply( $entry, $e, 'got correct entry' ); + my $response; + ok( $response = $api->GET( '/todo_file/entry/' . $e->{$type} ), + "by $type GET($e->{$type})" ); + $entry = undef; + ok( $entry = $response->data, 'Get data from response' ); + is_deeply( $entry, $e, "Entry Matches" ); - $response = undef; - ok( $response = $api->GET( '/todo_file/entry/' . $e->{md5} ), - "by md5 GET($e->{md5})" - ); - $entry = undef; - ok( $entry = $response->data, 'Get data from response' ); - is_deeply( $entry, $e, 'got correct entry' ); - -# $entry = undef; -# ok( $entry = $api->GET( '/todo_file/entry/' . $e->{line} . '/done' ), -# "by line GET($e->{line}/done)" -# ); -# is_deeply( $entry, $e, 'got correct entry' ); - -# $entry = undef; -# ok( $entry = $api->GET( '/todo_file/entry/' . $e->{md5} . '/done' ), -# "by md5 GET($e->{md5}/done)" -# ); -# is_deeply( $entry, $e, 'got correct entry' ); + $response = undef; + ok( $response + = $api->GET( '/todo_file/entry/' . $e->{$type} . '/done' ), + "by $type GET($e->{$type}/done)" + ); + my ($should_be) = $e->{text} =~ /^(x)/xms; + is( $response->data, $should_be, 'Check done status' ); + } } +