/
080-credentials.t
46 lines (32 loc) · 1.09 KB
/
080-credentials.t
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
#!perl6
use v6;
use Test;
use WebService::Soundcloud;
my $username = %*ENV{'SC_USERNAME'};
my $password = %*ENV{'SC_PASSWORD'};
if (defined $username && defined $password)
{
plan 7;
}
else
{
plan 7;
skip-rest 'No $SC_USERNAME or $SC_PASSWORD defined';
exit(0);
}
my $client-id = 'a1afc8eb1cbb96b787a5fb5232a8b4f6';
my $client-secret = 'd78d89f377b28d9f2a2692a14a55c501';
my %args = (
scope => 'non-expiring',
username => $username,
password => $password
) ;
ok(my $sc = WebService::Soundcloud.new( :$client-id, :$client-secret,|%args),"new object with credentials");
ok(my $token = $sc.get-access-token(), "get access token - no code needed");
ok(my $me = $sc.get-object('/me'), "get_object - /me");
ok($me{'permalink'}, "and the data has something in it");
ok(my $tracks = $sc.get-list('/me/tracks'), 'get_list - "/me/tracks"');
ok(?$tracks.elems, "and we got some tracks");
is($tracks.elems, $me{'track_count'}, "and the same as the number on the me");
done-testing;
# vim: expandtab shiftwidth=4 ft=perl6