summary refs log tree commit diff
path: root/t/lib
diff options
context:
space:
mode:
authorfranck cuny <franck@lumberjaph.net>2009-11-26 18:11:34 +0100
committerfranck cuny <franck@lumberjaph.net>2009-11-26 18:11:34 +0100
commitb8b8bb3d166081a02c85ce4cb4f7c28aca2f2166 (patch)
treee9aa3575e0c521c96510dd22bbf10c2f16405c9c /t/lib
parentadd error (diff)
downloadmoosex-net-api-b8b8bb3d166081a02c85ce4cb4f7c28aca2f2166.tar.gz
add more tests
Diffstat (limited to 't/lib')
-rw-r--r--t/lib/FakeAPI.pm38
-rw-r--r--t/lib/FakeAPIFail.pm21
-rw-r--r--t/lib/FakeAPIFail2.pm24
-rw-r--r--t/lib/Identica.pm24
4 files changed, 107 insertions, 0 deletions
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,
+);