File: invalidate-access-token.t

package info (click to toggle)
libtwitter-api-perl 1.0006-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 424 kB
  • sloc: perl: 2,868; makefile: 7
file content (75 lines) | stat: -rw-r--r-- 2,312 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#!perl
use warnings;
use Test::Spec;

use Twitter::API;

describe invalidate_access_token => sub {
    my $client;
    before each => sub {
        $client = Twitter::API->new_with_traits(
            traits              => 'ApiMethods',
            consumer_key        => 'key',
            consumer_secret     => 'secret',
            access_token        => 'token',
            access_token_secret => 'token-secret',
        );
        $client->stubs(send_request => sub { return });
    };

    it 'inferrs token/secret' => sub {
        my $c = $client->invalidate_access_token;
        my $req = $c->http_request;
        my $params = do {
            my $uri = URI->new;
            $uri->query($req->decoded_content);
            +{ $uri->query_form };
        };
        ok $req->method eq 'POST'
        && $req->uri->path =~ m{/oauth/invalidate_token\.json$}
        && eq_hash($params, {
            access_token        => 'token',
            access_token_secret => 'token-secret',
        });
    };

    it 'accepts synthetic token/secret args' => sub {
        my $c = $client->invalidate_access_token({
            -token        => 'token',
            -token_secret => 'token-secret',
        });
        my $req = $c->http_request;
        my $params = do {
            my $uri = URI->new;
            $uri->query($req->decoded_content);
            +{ $uri->query_form };
        };
        ok $req->method eq 'POST'
        && $req->uri->path =~ m{/oauth/invalidate_token\.json$}
        && eq_hash($params, {
            access_token        => 'token',
            access_token_secret => 'token-secret',
        });
    };

    it 'accepts access_token/access_token_secret args' => sub {
        my $c = $client->invalidate_access_token({
            access_token        => 'token',
            access_token_secret => 'token-secret',
        });
        my $req = $c->http_request;
        my $params = do {
            my $uri = URI->new;
            $uri->query($req->decoded_content);
            +{ $uri->query_form };
        };
        ok $req->method eq 'POST'
        && $req->uri->path =~ m{/oauth/invalidate_token\.json$}
        && eq_hash($params, {
            access_token        => 'token',
            access_token_secret => 'token-secret',
        });
    };
};

runtests;