diff options
| author | Max Nanis | 2026-03-06 16:49:46 -0500 |
|---|---|---|
| committer | Max Nanis | 2026-03-06 16:49:46 -0500 |
| commit | 91d040211a4ed6e4157896256a762d3854777b5e (patch) | |
| tree | cd95922ea4257dc8d3f4e4cbe8534474709a20dc /tests/models/test_device.py | |
| download | generalresearch-91d040211a4ed6e4157896256a762d3854777b5e.tar.gz generalresearch-91d040211a4ed6e4157896256a762d3854777b5e.zip | |
Initial commitv3.3.4
Diffstat (limited to 'tests/models/test_device.py')
| -rw-r--r-- | tests/models/test_device.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/models/test_device.py b/tests/models/test_device.py new file mode 100644 index 0000000..480e0c0 --- /dev/null +++ b/tests/models/test_device.py @@ -0,0 +1,27 @@ +import pytest + +iphone_ua_string = ( + "Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) " + "Version/5.1 Mobile/9B179 Safari/7534.48.3" +) +ipad_ua_string = ( + "Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, " + "like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10" +) +windows_ie_ua_string = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" +chromebook_ua_string = ( + "Mozilla/5.0 (X11; CrOS i686 0.12.433) AppleWebKit/534.30 (KHTML, like Gecko) " + "Chrome/12.0.742.77 Safari/534.30" +) + + +class TestDeviceUA: + def test_device_ua(self): + from generalresearch.models import DeviceType + from generalresearch.models.device import parse_device_from_useragent + + assert parse_device_from_useragent(iphone_ua_string) == DeviceType.MOBILE + assert parse_device_from_useragent(ipad_ua_string) == DeviceType.TABLET + assert parse_device_from_useragent(windows_ie_ua_string) == DeviceType.DESKTOP + assert parse_device_from_useragent(chromebook_ua_string) == DeviceType.DESKTOP + assert parse_device_from_useragent("greg bot") == DeviceType.UNKNOWN |
