summary refs log tree commit diff
path: root/t/spore-middleware
diff options
context:
space:
mode:
Diffstat (limited to 't/spore-middleware')
-rw-r--r--t/spore-middleware/auth-oauth.t40
1 files changed, 40 insertions, 0 deletions
diff --git a/t/spore-middleware/auth-oauth.t b/t/spore-middleware/auth-oauth.t
new file mode 100644
index 0000000..a704e24
--- /dev/null
+++ b/t/spore-middleware/auth-oauth.t
@@ -0,0 +1,40 @@
+use strict;
+use warnings;
+
+use Test::More;
+
+plan tests => 3;
+
+use NET::HTTP::Spore;
+use JSON;
+
+my $api = {
+    base_url => "http://term.ie/oauth/example",
+    name     => "term.ie",
+    methods  => {
+        echo => {
+            path            => "/echo_api.php",
+            method          => "GET",
+            expected_status => [200],
+            authentication => 1,
+        }
+    },
+};
+
+SKIP: {
+    skip "require RUN_HTTP_TEST", 3 unless $ENV{RUN_HTTP_TEST};
+
+    my $client = Net::HTTP::Spore->new_from_string( JSON::encode_json($api) );
+
+    $client->enable(
+        'Auth::OAuth',
+        consumer_key    => 'key',
+        consumer_secret => 'secret',
+        token           => 'accesskey',
+        token_secret    => 'accesssecret',
+    );
+
+    ok my $r = $client->echo(method => 'foo', bar => 'baz');
+    is $r->status, 200;
+    like $r->body, qr/bar=baz&method=foo/;
+}