]> jfr.im git - z_archive/twitter.git/blame - tests/test_internals.py
bandaid unicode/str.encode-related crash bug
[z_archive/twitter.git] / tests / test_internals.py
CommitLineData
8fccbe95
MV
1# encoding: utf-8
2from __future__ import unicode_literals
3
4from twitter.api import method_for_uri, build_uri
2b533cdc 5from twitter.util import PY_3_OR_HIGHER, actually_bytes
8fccbe95
MV
6
7def 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
13def 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"
2b533cdc
MV
24
25def test_actually_bytes():
26 out_type = str
27 if PY_3_OR_HIGHER:
28 out_type = bytes
7b794007 29 for inp in [b"asdf", "asdf", "asdfüü", 1234]:
2b533cdc 30 assert type(actually_bytes(inp)) == out_type