From b8b8bb3d166081a02c85ce4cb4f7c28aca2f2166 Mon Sep 17 00:00:00 2001 From: franck cuny Date: Thu, 26 Nov 2009 18:11:34 +0100 Subject: add more tests --- t/lib/FakeAPI.pm | 38 ++++++++++++++++++++++++++++++++++++++ t/lib/FakeAPIFail.pm | 21 +++++++++++++++++++++ t/lib/FakeAPIFail2.pm | 24 ++++++++++++++++++++++++ t/lib/Identica.pm | 24 ++++++++++++++++++++++++ 4 files changed, 107 insertions(+) create mode 100644 t/lib/FakeAPI.pm create mode 100644 t/lib/FakeAPIFail.pm create mode 100644 t/lib/FakeAPIFail2.pm create mode 100644 t/lib/Identica.pm (limited to 't/lib') diff --git a/t/lib/FakeAPI.pm b/t/lib/FakeAPI.pm new file mode 100644 index 0000000..0496351 --- /dev/null +++ b/t/lib/FakeAPI.pm @@ -0,0 +1,38 @@ +package FakeAPI; +use Moose; +use MooseX::Net::API; + +net_api_declare fake_api => ( + base_url => 'http://identi.ca/api', + format => 'json', + format_mode => 'append', + require_authentication => 0, +); + +net_api_method foo => ( + description => 'this does foo', + method => 'GET', + path => '/foo/', + code => sub { my $self = shift; $self->get_foo }, + params => [qw/bar/], +); + +net_api_method bar => ( + description => 'this does bar', + method => 'GET', + path => '/bar/', + params => [qw/bar baz/], + required => [qw/baz/], +); + +net_api_method baz => ( + description => 'this one does baztwo', + method => 'BAZ', + path => '/baz/', + params => [qw/foo bla/], + required => [qw/bla/], +); + +sub get_foo { return 1; } + +1; diff --git a/t/lib/FakeAPIFail.pm b/t/lib/FakeAPIFail.pm new file mode 100644 index 0000000..80f1efa --- /dev/null +++ b/t/lib/FakeAPIFail.pm @@ -0,0 +1,21 @@ +package FakeAPI; +use Moose; +use MooseX::Net::API; + +has api_base_url => ( + is => 'ro', + isa => 'Str', + default => 'http://identi.ca/api', +); + +has format => ( is => 'ro', isa => 'Str', default => 'json', ); +format_query 'format' => ( mode => 'content-type' ); + +net_api_method foo => ( + description => 'this does foo', + method => 'GET', + path => '/foo/', + required => [qw/bar/], +); + +1; diff --git a/t/lib/FakeAPIFail2.pm b/t/lib/FakeAPIFail2.pm new file mode 100644 index 0000000..8ec10c8 --- /dev/null +++ b/t/lib/FakeAPIFail2.pm @@ -0,0 +1,24 @@ +package FakeAPI; +use Moose; +use MooseX::Net::API; + +has api_base_url => ( + is => 'ro', + isa => 'Str', + default => 'http://identi.ca/api', +); + +has format => ( is => 'ro', isa => 'Str', default => 'json', ); +format_query 'format' => ( mode => 'content-type' ); + +net_api_method baz => ( + description => 'this one does baztwo', + method => 'BAZ', + path => '/baz/', + params => [qw/foo/], + required => [qw/bla/], +); + +sub get_foo { return 1; } + +1; diff --git a/t/lib/Identica.pm b/t/lib/Identica.pm new file mode 100644 index 0000000..3772d03 --- /dev/null +++ b/t/lib/Identica.pm @@ -0,0 +1,24 @@ +package Identica; +use Moose; +use MooseX::Net::API; + +has [qw/api_username api_password/] => ( is => 'ro', isa => 'Str' ); + +net_api_declare identica => ( + base_url => 'http://identi.ca/api', + format => 'json', + format_mode => 'append', + authentication => 1, +); +net_api_method public_timeline => ( + path => '/statuses/public_timeline', + method => 'GET', +); + +net_api_method update_status => ( + path => '/statuses/update', + method => 'POST', + params => [qw/status/], + required => [qw/status/], + params_in_url => 1, +); -- cgit 1.4.1