urllib3

Форк
0
/
test_compatibility.py 
48 строк · 1.5 Кб
1
from __future__ import annotations
2

3
import http.cookiejar
4
import urllib
5
from unittest import mock
6

7
import pytest
8

9
import urllib3.http2
10
from urllib3.response import HTTPResponse
11

12

13
class TestCookiejar:
14
    def test_extract(self) -> None:
15
        request = urllib.request.Request("http://google.com")
16
        cookiejar = http.cookiejar.CookieJar()
17
        response = HTTPResponse()
18

19
        cookies = [
20
            "sessionhash=abcabcabcabcab; path=/; HttpOnly",
21
            "lastvisit=1348253375; expires=Sat, 21-Sep-2050 18:49:35 GMT; path=/",
22
        ]
23
        for c in cookies:
24
            response.headers.add("set-cookie", c)
25
        cookiejar.extract_cookies(response, request)  # type: ignore[arg-type]
26
        assert len(cookiejar) == len(cookies)
27

28

29
class TestInitialization:
30
    @mock.patch("urllib3.http2.version")
31
    def test_h2_version_check(self, mock_version: mock.MagicMock) -> None:
32
        try:
33
            mock_version.return_value = "4.1.0"
34
            urllib3.http2.inject_into_urllib3()
35

36
            mock_version.return_value = "3.9.9"
37
            with pytest.raises(
38
                ImportError, match="urllib3 v2 supports h2 version 4.x.x.*"
39
            ):
40
                urllib3.http2.inject_into_urllib3()
41

42
            mock_version.return_value = "5.0.0"
43
            with pytest.raises(
44
                ImportError, match="urllib3 v2 supports h2 version 4.x.x.*"
45
            ):
46
                urllib3.http2.inject_into_urllib3()
47
        finally:
48
            urllib3.http2.extract_from_urllib3()
49

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.