]> jfr.im git - z_archive/twitter.git/blob - tests/test_internals.py
Implementation of multipart/form-data that handles more imports and is more conformant
[z_archive/twitter.git] / tests / test_internals.py
1 # encoding: utf-8
2 from __future__ import unicode_literals
3
4 from twitter.api import method_for_uri, build_uri
5 from twitter.util import PY_3_OR_HIGHER, actually_bytes
6
7 def test_method_for_uri__lookup():
8 assert "POST" == method_for_uri("/1.1/users/lookup")
9 assert "POST" == method_for_uri("/1.1/statuses/lookup")
10 assert "POST" == method_for_uri("/1.1/users/lookup/12345")
11 assert "GET" == method_for_uri("/1.1/friendships/lookup")
12
13 def test_build_uri():
14 uri = build_uri(["1.1", "foo", "bar"], {})
15 assert uri == "1.1/foo/bar"
16
17 # Interpolation works
18 uri = build_uri(["1.1", "_foo", "bar"], {"_foo": "asdf"})
19 assert uri == "1.1/asdf/bar"
20
21 # But only for strings beginning with _.
22 uri = build_uri(["1.1", "foo", "bar"], {"foo": "asdf"})
23 assert uri == "1.1/foo/bar"
24
25 def test_actually_bytes():
26 out_type = str
27 if PY_3_OR_HIGHER:
28 out_type = bytes
29 for inp in [b"asdf", "asdf", u"asdfüü", 1234]:
30 assert type(actually_bytes(inp)) == out_type