Skip to content

Commit d166485

Browse files
jorwoodsjacalata
authored andcommitted
chore: pytestify sort (#1725)
Co-authored-by: Jordan Woods <13803242+jorwoods@users.noreply.github.com>
1 parent 88a6768 commit d166485

File tree

1 file changed

+30
-65
lines changed

1 file changed

+30
-65
lines changed

test/test_sort.py

Lines changed: 30 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import re
2-
import unittest
31
from urllib.parse import parse_qs
42

53
import pytest
@@ -13,30 +11,33 @@ def server():
1311
"""Fixture to create a TSC.Server instance for testing."""
1412
server = TSC.Server("http://test", False)
1513

16-
def test_empty_filter(self):
17-
with pytest.raises(TypeError):
18-
TSC.Filter("")
14+
# Fake signin
15+
server._site_id = "dad65087-b08b-4603-af4e-2887b8aafc67"
16+
server._auth_token = "j80k54ll2lfMZ0tv97mlPvvSCRyD0DOM"
1917

2018
return server
2119

22-
resp = self.server.workbooks.get_request(url, request_object=opts)
23-
query = parse_qs(resp.request.query)
24-
assert "pagenumber" in query
25-
assert query["pagenumber"] == ["13"]
26-
assert "pagesize" in query
27-
assert query["pagesize"] == ["13"]
28-
assert "filter" in query
29-
assert query["filter"] == ["name:eq:superstore"]
3020

31-
def test_filter_equals_list(self):
32-
with pytest.raises(ValueError, match="Filter values can only be a list if the operator is 'in'.") as cm:
33-
TSC.Filter(TSC.RequestOptions.Field.Tags, TSC.RequestOptions.Operator.Equals, ["foo", "bar"])
21+
def test_empty_filter() -> None:
22+
with pytest.raises(TypeError):
23+
TSC.Filter("") # type: ignore
3424

35-
def test_filter_in(self):
36-
with requests_mock.mock() as m:
37-
m.get(requests_mock.ANY)
38-
url = "http://test/api/2.3/sites/dad65087-b08b-4603-af4e-2887b8aafc67/workbooks"
39-
opts = TSC.RequestOptions(pagesize=13, pagenumber=13)
25+
26+
def test_filter_equals(server: TSC.Server) -> None:
27+
with requests_mock.mock() as m:
28+
m.get(requests_mock.ANY)
29+
url = "http://test/api/2.3/sites/dad65087-b08b-4603-af4e-2887b8aafc67/workbooks"
30+
opts = TSC.RequestOptions(pagesize=13, pagenumber=13)
31+
opts.filter.add(TSC.Filter(TSC.RequestOptions.Field.Name, TSC.RequestOptions.Operator.Equals, "Superstore"))
32+
33+
resp = server.workbooks.get_request(url, request_object=opts)
34+
query = parse_qs(resp.request.query)
35+
assert "pagenumber" in query
36+
assert query["pagenumber"] == ["13"]
37+
assert "pagesize" in query
38+
assert query["pagesize"] == ["13"]
39+
assert "filter" in query
40+
assert query["filter"] == ["name:eq:superstore"]
4041

4142

4243
def test_filter_equals_list() -> None:
@@ -93,50 +94,14 @@ def test_filter_combo(server: TSC.Server) -> None:
9394
)
9495
)
9596

96-
resp = self.server.workbooks.get_request(url, request_object=opts)
97-
query = parse_qs(resp.request.query)
98-
assert "pagenumber" in query
99-
assert query["pagenumber"] == ["13"]
100-
assert "pagesize" in query
101-
assert query["pagesize"] == ["13"]
102-
assert "filter" in query
103-
assert query["filter"] == ["tags:in:[stocks,market]"]
97+
opts.filter.add(TSC.Filter(TSC.RequestOptions.Field.SiteRole, TSC.RequestOptions.Operator.Equals, "Publisher"))
10498

10599
resp = server.workbooks.get_request(url, request_object=opts)
106100

107-
resp = self.server.workbooks.get_request(url, request_object=opts)
108-
query = parse_qs(resp.request.query)
109-
assert "pagenumber" in query
110-
assert query["pagenumber"] == ["13"]
111-
assert "pagesize" in query
112-
assert query["pagesize"] == ["13"]
113-
assert "sort" in query
114-
assert query["sort"] == ["name:asc"]
115-
116-
def test_filter_combo(self):
117-
with requests_mock.mock() as m:
118-
m.get(requests_mock.ANY)
119-
url = "http://test/api/2.3/sites/dad65087-b08b-4603-af4e-2887b8aafc67/users"
120-
opts = TSC.RequestOptions(pagesize=13, pagenumber=13)
121-
122-
opts.filter.add(
123-
TSC.Filter(
124-
TSC.RequestOptions.Field.LastLogin,
125-
TSC.RequestOptions.Operator.GreaterThanOrEqual,
126-
"2017-01-15T00:00:00:00Z",
127-
)
128-
)
129-
130-
opts.filter.add(
131-
TSC.Filter(TSC.RequestOptions.Field.SiteRole, TSC.RequestOptions.Operator.Equals, "Publisher")
132-
)
133-
134-
resp = self.server.workbooks.get_request(url, request_object=opts)
135-
136-
query = parse_qs(resp.request.query)
137-
assert "pagenumber" in query
138-
assert query["pagenumber"] == ["13"]
139-
assert "pagesize" in query
140-
assert query["pagesize"] == ["13"]
141-
assert "filter" in query
142-
assert query["filter"] == ["lastlogin:gte:2017-01-15t00:00:00:00z,siterole:eq:publisher"]
101+
query = parse_qs(resp.request.query)
102+
assert "pagenumber" in query
103+
assert query["pagenumber"] == ["13"]
104+
assert "pagesize" in query
105+
assert query["pagesize"] == ["13"]
106+
assert "filter" in query
107+
assert query["filter"] == ["lastlogin:gte:2017-01-15t00:00:00:00z,siterole:eq:publisher"]

0 commit comments

Comments
 (0)