def test_prepare_request(self, token): url, body, headers = sansio.prepare_request(methods.AUTH_TEST, {}, {}, {}, token) assert url == "https://slack.com/api/auth.test" assert body == "{}" assert "Authorization" in headers assert "Content-type" in headers assert headers["Content-type"] == "application/json; charset=utf-8" url, body, headers = sansio.prepare_request(methods.AUTH_REVOKE, {}, {}, {}, token) assert url == "https://slack.com/api/auth.revoke" assert body == {"token": token} assert headers == {}
def test_prepare_request_body_message(self, token, message): _, body, headers = sansio.prepare_request(methods.AUTH_TEST, message, {}, {}, token) assert isinstance(body, str) assert "Authorization" in headers assert "Content-type" in headers assert headers["Content-type"] == "application/json; charset=utf-8" _, body, headers = sansio.prepare_request(methods.AUTH_REVOKE, message, {}, {}, token) assert isinstance(body, dict) assert isinstance(body.get("attachments", ""), str) assert body["token"] == token
def test_prepare_request_body(self, token, payload, result): _, body, headers = sansio.prepare_request(methods.AUTH_TEST, payload, {}, {}, token) assert isinstance(body, str) assert body == json.dumps(result) assert "Authorization" in headers assert "Content-type" in headers assert headers["Content-type"] == "application/json; charset=utf-8" _, body, headers = sansio.prepare_request(methods.AUTH_REVOKE, payload, {}, {}, token) result["token"] = token assert isinstance(body, dict) assert body == result
def test_prepare_request_body_hook(self, token, payload, result): _, body, headers = sansio.prepare_request( "https://hooks.slack.com/abcdefg", payload, {}, {}, token) assert body == result assert "Authorization" in headers assert "Content-type" in headers assert headers["Content-type"] == "application/json; charset=utf-8"
def test_prepare_request_body_message_force_json(self, token, message): _, body, headers = sansio.prepare_request( methods.AUTH_REVOKE, message, {}, {}, token, as_json=True ) assert isinstance(body, str) assert "Authorization" in headers assert "Content-type" in headers assert headers["Content-type"] == "application/json; charset=utf-8"
def test_prepare_request_message_hook(self, token, message): _, body, headers = sansio.prepare_request( "https://hooks.slack.com/abcdefg", message, {}, {}, token) assert isinstance(body, str) data = json.loads(body) assert isinstance(data.get("attachments", []), list) assert "Authorization" in headers assert "Content-type" in headers assert headers["Content-type"] == "application/json; charset=utf-8"
def test_prepare_request_url_hook(self): clean_url, _, _ = sansio.prepare_request( "https://hooks.slack.com/T0000000/aczvrfver", {}, {}, {}, "") assert clean_url == "https://hooks.slack.com/T0000000/aczvrfver"
def test_prepare_request_urls(self, url): clean_url, _, _ = sansio.prepare_request(url, {}, {}, {}, "") assert clean_url == "https://slack.com/api/auth.test"
def test_prepare_request_headers(self, headers, global_headers, result): _, _, headers = sansio.prepare_request("", {}, headers, global_headers, "") assert headers == result