]>
jfr.im git - z_archive/twitter.git/blob - tests/test_sanity.py
3 from random
import choice
6 from twitter
import Twitter
, NoAuth
, OAuth
, read_token_file
, TwitterHTTPError
7 from twitter
.cmdline
import CONSUMER_KEY
, CONSUMER_SECRET
10 oauth
= OAuth(*read_token_file('tests/oauth_creds')
11 + (CONSUMER_KEY
, CONSUMER_SECRET
))
13 twitter
= Twitter(domain
='api.twitter.com',
16 twitter11
= Twitter(domain
='api.twitter.com',
19 twitter_na
= Twitter(domain
='api.twitter.com', auth
=noauth
, api_version
='1')
20 twitter11_na
= Twitter(domain
='api.twitter.com', auth
=noauth
, api_version
='1.1')
23 AZaz
= "abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ"
26 return ''.join(choice(AZaz
) for _
in range(10))
29 def test_API_set_tweet():
30 random_tweet
= "A random tweet " + get_random_str()
31 twitter
.statuses
.update(status
=random_tweet
)
33 recent
= twitter
.statuses
.user_timeline()
35 assert isinstance(recent
.rate_limit_remaining
, int)
36 assert isinstance(recent
.rate_limit_reset
, int)
37 assert random_tweet
== recent
[0]['text']
40 def test_API_set_unicode_tweet():
41 random_tweet
= u
"A random tweet with unicode üøπ" + get_random_str()
42 twitter
.statuses
.update(status
=random_tweet
)
44 recent
= twitter
.statuses
.user_timeline()
46 assert random_tweet
== recent
[0]['text']
50 results
= twitter11
.search
.tweets(q
='foo')
54 def test_get_trends():
55 # This is one method of inserting parameters, using named
57 world_trends
= twitter
.trends
._woeid
(_woeid
=1)
61 def test_get_trends_2():
62 # This is a nicer variation of the same call as above.
63 world_trends
= twitter
.trends
._(1)
67 def test_get_trends_3():
68 # Of course they broke it all again in 1.1...
69 assert twitter11
.trends
.place(_id
=1)
71 def test_TwitterHTTPError_raised_for_invalid_oauth():
74 twitter11_na
.statuses
.mentions_timeline()
75 except TwitterHTTPError
:
76 # this is the error we are looking for :)