]>
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 t_search
= Twitter(domain
='search.twitter.com')
51 results
= t_search
.search(q
='foo')
55 def test_get_trends():
56 # This is one method of inserting parameters, using named
58 world_trends
= twitter
.trends
._woeid
(_woeid
=1)
62 def test_get_trends_2():
63 # This is a nicer variation of the same call as above.
64 world_trends
= twitter
.trends
._(1)
68 def test_get_trends_3():
69 # Of course they broke it all again in 1.1...
70 assert twitter11
.trends
.place(_id
=1)
72 def test_TwitterHTTPError_raised_for_invalid_oauth():
75 twitter11_na
.statuses
.mentions_timeline()
76 except TwitterHTTPError
:
77 # this is the error we are looking for :)