AnyEvent-Twitter
view release on metacpan or search on metacpan
xt/get_request_token.t view on Meta::CPAN
}
my $screen_name = $config->{screen_name};
{
my %token;
my $cv = AE::cv;
$cv->begin;
AnyEvent::Twitter->get_request_token(
consumer_key => $config->{consumer_key},
consumer_secret => $config->{consumer_secret},
callback_url => 'http://localhost:5000/',
auth => 'authenticate',
cb => sub {
my ($location, $token, $body, $header) = @_;
note Dumper \@_;
like $location, qr/^http/, 'authorize location';
%token = %$token;
$cv->end;
},
);
$cv->recv;
print "token: ";
my $oauth_token = <STDIN>;
chomp $oauth_token;
print "verifier: ";
my $oauth_verifier = <STDIN>;
chomp $oauth_verifier;
$cv = AE::cv;
$cv->begin;
AnyEvent::Twitter->get_access_token(
consumer_key => $config->{consumer_key},
consumer_secret => $config->{consumer_secret},
oauth_token => $oauth_token,
oauth_token_secret => $token{oauth_token_secret},
oauth_verifier => $oauth_verifier,
cb => sub {
my ($token, $body, $header) = @_;
note Dumper \@_;
note Dumper $token;
ok defined $token->{oauth_token};
ok defined $token->{oauth_token_secret};
like $token->{user_id}, qr/^\d+$/, 'user_id';
is $token->{screen_name}, $config->{screen_name};
my $twitty = AnyEvent::Twitter->new(
consumer_key => $config->{consumer_key},
consumer_secret => $config->{consumer_secret},
token => $token->{oauth_token},
token_secret => $token->{oauth_token_secret},
);
$twitty->get('account/verify_credentials', sub {
my ($header, $res) = @_;
note Dumper $res;
is $res->{id}, $token->{user_id};
is $res->{screen_name}, $token->{screen_name};
$cv->end;
});
},
);
$cv->recv;
}
{
my %token;
my $cv = AE::cv;
$cv->begin;
AnyEvent::Twitter->get_request_token(
consumer_key => $config->{consumer_key},
consumer_secret => $config->{consumer_secret},
callback_url => 'http://localhost:5000/',
cb => sub {
my ($location, $token, $body, $header) = @_;
note Dumper \@_;
like $location, qr/^http/, 'authorize location';
%token = %$token;
$cv->end;
},
);
$cv->recv;
print "token: ";
my $oauth_token = <STDIN>;
chomp $oauth_token;
print "verifier: ";
my $oauth_verifier = <STDIN>;
chomp $oauth_verifier;
$cv = AE::cv;
$cv->begin;
AnyEvent::Twitter->get_access_token(
consumer_key => $config->{consumer_key},
consumer_secret => $config->{consumer_secret},
oauth_token => $oauth_token,
oauth_token_secret => $token{oauth_token_secret},
oauth_verifier => $oauth_verifier,
cb => sub {
my ($token, $body, $header) = @_;
note Dumper \@_;
note Dumper $token;
ok defined $token->{oauth_token};
ok defined $token->{oauth_token_secret};
like $token->{user_id}, qr/^\d+$/, 'user_id';
is $token->{screen_name}, $config->{screen_name};
my $twitty = AnyEvent::Twitter->new(
consumer_key => $config->{consumer_key},
consumer_secret => $config->{consumer_secret},
token => $token->{oauth_token},
token_secret => $token->{oauth_token_secret},
);
$twitty->get('account/verify_credentials', sub {
my ($header, $res) = @_;
note Dumper $res;
is $res->{id}, $token->{user_id};
is $res->{screen_name}, $token->{screen_name};
$cv->end;
});
},
);
$cv->recv;
}
done_testing();
( run in 0.812 second using v1.01-cache-2.11-cpan-39bf76dae61 )