Skip to content

Commit 1c9881e

Browse files
committed
switch to issues in resultsets tests
1 parent 6fcf653 commit 1c9881e

File tree

1 file changed

+104
-112
lines changed

1 file changed

+104
-112
lines changed

tests/test_resultsets.py

+104-112
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
from redminelib import exceptions
44

55
response = {
6-
'projects': [
7-
{'name': 'Foo', 'identifier': 'foo', 'id': 1},
8-
{'name': 'Bar', 'identifier': 'bar', 'id': 2},
9-
{'name': 'Baz', 'identifier': 'baz', 'id': 3},
6+
'issues': [
7+
{'subject': 'Foo', 'id': 1, 'tracker_id': 1},
8+
{'subject': 'Bar', 'id': 2, 'tracker_id': 2},
9+
{'subject': 'Baz', 'id': 3, 'tracker_id': 3},
1010
]
1111
}
1212

@@ -17,159 +17,151 @@ def setUp(self):
1717
self.response.json = mock.Mock(return_value=response)
1818

1919
def test_has_custom_repr(self):
20-
self.assertEqual(repr(self.redmine.project.all()),
21-
'<redminelib.resultsets.ResourceSet object with Project resources>')
20+
self.assertEqual(repr(self.redmine.issue.all()),
21+
'<redminelib.resultsets.ResourceSet object with Issue resources>')
2222

2323
def test_offset_limit_all(self):
2424
self.response.json.return_value = dict(total_count=3, limit=0, offset=0, **response)
25-
projects = self.redmine.project.all()
26-
self.assertEqual(projects.limit, 0)
27-
self.assertEqual(projects.offset, 0)
28-
self.assertEqual(projects[0].id, 1)
29-
self.assertEqual(projects[1].id, 2)
30-
self.assertEqual(projects[2].id, 3)
25+
issues = self.redmine.issue.all()
26+
self.assertEqual(issues.limit, 0)
27+
self.assertEqual(issues.offset, 0)
28+
self.assertEqual(issues[0].id, 1)
29+
self.assertEqual(issues[1].id, 2)
30+
self.assertEqual(issues[2].id, 3)
3131

3232
def test_offset_limit(self):
3333
self.response.json.return_value = {
34-
'total_count': 2, 'limit': 300, 'offset': 1, 'projects': response['projects'][1:3]}
35-
projects = self.redmine.project.all()[1:300]
36-
self.assertEqual(projects.limit, 300)
37-
self.assertEqual(projects.offset, 1)
38-
self.assertEqual(projects[0].id, 2)
39-
self.assertEqual(projects[1].id, 3)
40-
self.assertEqual(projects[:1][0].id, 2)
41-
self.assertEqual(projects[1:][0].id, 3)
42-
self.assertEqual(projects[1:1][0].id, 3)
34+
'total_count': 2, 'limit': 300, 'offset': 1, 'issues': response['issues'][1:3]}
35+
issues = self.redmine.issue.all()[1:300]
36+
self.assertEqual(issues.limit, 300)
37+
self.assertEqual(issues.offset, 1)
38+
self.assertEqual(issues[0].id, 2)
39+
self.assertEqual(issues[1].id, 3)
40+
self.assertEqual(issues[:1][0].id, 2)
41+
self.assertEqual(issues[1:][0].id, 3)
42+
self.assertEqual(issues[1:1][0].id, 3)
4343

4444
def test_offset_limit_mimic(self):
45-
projects = self.redmine.project.all()[1:3]
46-
self.assertEqual(projects.limit, 3)
47-
self.assertEqual(projects.offset, 1)
48-
self.assertEqual(projects[0].id, 2)
49-
self.assertEqual(projects[1].id, 3)
45+
issues = self.redmine.issue.all()[1:3]
46+
self.assertEqual(issues.limit, 3)
47+
self.assertEqual(issues.offset, 1)
48+
self.assertEqual(issues[0].id, 2)
49+
self.assertEqual(issues[1].id, 3)
5050

5151
def test_total_count(self):
5252
self.response.json.return_value = dict(total_count=3, limit=0, offset=0, **response)
53-
projects = self.redmine.project.all()
54-
len(projects)
55-
self.assertEqual(projects.total_count, 3)
53+
issues = self.redmine.issue.all()
54+
len(issues)
55+
self.assertEqual(issues.total_count, 3)
5656

5757
def test_total_count_mimic(self):
58-
response_with_custom_fields = {'project': dict(response['projects'][0], custom_fields=[{'id': 1, 'value': 0}])}
59-
self.response.json.return_value = response_with_custom_fields
60-
project = self.redmine.project.get('foo')
61-
self.assertEqual(project.custom_fields.total_count, 1)
58+
response_with_cf = {'issue': dict(custom_fields=[{'id': 1, 'value': 0}], **response['issues'][0])}
59+
self.response.json.return_value = response_with_cf
60+
issue = self.redmine.issue.get(1)
61+
self.assertEqual(issue.custom_fields.total_count, 1)
6262

6363
def test_total_count_raise_exception_if_not_evaluated(self):
64-
self.assertRaises(exceptions.ResultSetTotalCountError, lambda: self.redmine.project.all().total_count)
64+
self.assertRaises(exceptions.ResultSetTotalCountError, lambda: self.redmine.issue.all().total_count)
6565

6666
def test_resultset_is_empty(self):
67-
self.response.json.return_value = {'limit': 100, 'projects': [], 'total_count': 0, 'offset': 0}
68-
projects = self.redmine.project.all()
69-
self.assertEqual(len(projects), 0)
70-
self.assertEqual(list(projects), [])
67+
self.response.json.return_value = {'limit': 100, 'issues': [], 'total_count': 0, 'offset': 0}
68+
issues = self.redmine.issue.all()
69+
self.assertEqual(len(issues), 0)
70+
self.assertEqual(list(issues), [])
7171

7272
def test_sliced_resultset_is_empty(self):
73-
self.response.json.return_value = {'limit': 100, 'projects': [], 'total_count': 0, 'offset': 0}
74-
projects = self.redmine.project.all()[:200]
75-
self.assertEqual(len(projects), 0)
76-
self.assertEqual(list(projects), [])
73+
self.response.json.return_value = {'limit': 100, 'issues': [], 'total_count': 0, 'offset': 0}
74+
issues = self.redmine.issue.all()[:200]
75+
self.assertEqual(len(issues), 0)
76+
self.assertEqual(list(issues), [])
7777

7878
def test_supports_iteration(self):
79-
projects = list(self.redmine.project.all())
80-
self.assertEqual(projects[0].name, 'Foo')
81-
self.assertEqual(projects[0].identifier, 'foo')
82-
self.assertEqual(projects[0].id, 1)
83-
self.assertEqual(projects[1].name, 'Bar')
84-
self.assertEqual(projects[1].identifier, 'bar')
85-
self.assertEqual(projects[1].id, 2)
79+
issues = list(self.redmine.issue.all())
80+
self.assertEqual(issues[0].subject, 'Foo')
81+
self.assertEqual(issues[0].id, 1)
82+
self.assertEqual(issues[1].subject, 'Bar')
83+
self.assertEqual(issues[1].id, 2)
8684

8785
def test_supports_len(self):
88-
self.assertEqual(len(self.redmine.project.all()), 3)
86+
self.assertEqual(len(self.redmine.issue.all()), 3)
8987

9088
def test_get_method_resource_found(self):
91-
projects = self.redmine.project.all().get(2)
92-
self.assertEqual(projects.id, 2)
89+
issues = self.redmine.issue.all().get(2)
90+
self.assertEqual(issues.id, 2)
9391

9492
def test_get_method_resource_not_found(self):
95-
projects = self.redmine.project.all().get(6)
96-
self.assertEqual(projects, None)
93+
issues = self.redmine.issue.all().get(6)
94+
self.assertEqual(issues, None)
9795

9896
def test_filter_method(self):
99-
projects = self.redmine.project.all().filter((1, 3))
100-
self.assertEqual(projects[0].id, 1)
101-
self.assertEqual(projects[1].id, 3)
97+
issues = self.redmine.issue.all().filter((1, 3))
98+
self.assertEqual(issues[0].id, 1)
99+
self.assertEqual(issues[1].id, 3)
102100

103101
def test_update_method(self):
104-
projects = self.redmine.project.all().update(name='FooBar')
105-
self.assertEqual(projects[0].name, 'FooBar')
106-
self.assertEqual(projects[1].name, 'FooBar')
107-
self.assertEqual(projects[2].name, 'FooBar')
102+
issues = self.redmine.issue.all().update(subject='FooBar')
103+
self.assertEqual(issues[0].subject, 'FooBar')
104+
self.assertEqual(issues[1].subject, 'FooBar')
105+
self.assertEqual(issues[2].subject, 'FooBar')
108106

109107
def test_delete_method(self):
110-
self.assertEqual(self.redmine.project.all().delete(), True)
108+
self.assertEqual(self.redmine.issue.all().delete(), True)
111109

112110
def test_resourceset_is_picklable(self):
113111
import pickle
114-
projects = self.redmine.project.all()
115-
unpickled_projects = pickle.loads(pickle.dumps(projects))
116-
self.assertEqual(projects[0]['name'], unpickled_projects[0]['name'])
117-
self.assertEqual(projects[1]['name'], unpickled_projects[1]['name'])
118-
self.assertEqual(projects[2]['name'], unpickled_projects[2]['name'])
112+
issues = self.redmine.issue.all()
113+
unpickled_issues = pickle.loads(pickle.dumps(issues))
114+
self.assertEqual(issues[0]['subject'], unpickled_issues[0]['subject'])
115+
self.assertEqual(issues[1]['subject'], unpickled_issues[1]['subject'])
116+
self.assertEqual(issues[2]['subject'], unpickled_issues[2]['subject'])
119117

120118
def test_values_method(self):
121-
projects = list(self.redmine.project.all().values())
122-
self.assertEqual(projects[0]['name'], 'Foo')
123-
self.assertEqual(projects[0]['identifier'], 'foo')
124-
self.assertEqual(projects[0]['id'], 1)
125-
self.assertEqual(projects[1]['name'], 'Bar')
126-
self.assertEqual(projects[1]['identifier'], 'bar')
127-
self.assertEqual(projects[1]['id'], 2)
128-
self.assertEqual(projects[2]['name'], 'Baz')
129-
self.assertEqual(projects[2]['identifier'], 'baz')
130-
self.assertEqual(projects[2]['id'], 3)
119+
issues = list(self.redmine.issue.all().values())
120+
self.assertEqual(issues[0]['subject'], 'Foo')
121+
self.assertEqual(issues[0]['id'], 1)
122+
self.assertEqual(issues[1]['subject'], 'Bar')
123+
self.assertEqual(issues[1]['id'], 2)
124+
self.assertEqual(issues[2]['subject'], 'Baz')
125+
self.assertEqual(issues[2]['id'], 3)
131126

132127
def test_values_method_with_fields(self):
133-
projects = list(self.redmine.project.all().values('name', 'id'))
134-
self.assertEqual(len(projects[0]), 2)
135-
self.assertEqual(projects[0]['name'], 'Foo')
136-
self.assertEqual(projects[0]['id'], 1)
137-
self.assertEqual(len(projects[1]), 2)
138-
self.assertEqual(projects[1]['name'], 'Bar')
139-
self.assertEqual(projects[1]['id'], 2)
140-
self.assertEqual(len(projects[2]), 2)
141-
self.assertEqual(projects[2]['name'], 'Baz')
142-
self.assertEqual(projects[2]['id'], 3)
128+
issues = list(self.redmine.issue.all().values('subject', 'id'))
129+
self.assertEqual(len(issues[0]), 2)
130+
self.assertEqual(issues[0]['subject'], 'Foo')
131+
self.assertEqual(issues[0]['id'], 1)
132+
self.assertEqual(len(issues[1]), 2)
133+
self.assertEqual(issues[1]['subject'], 'Bar')
134+
self.assertEqual(issues[1]['id'], 2)
135+
self.assertEqual(len(issues[2]), 2)
136+
self.assertEqual(issues[2]['subject'], 'Baz')
137+
self.assertEqual(issues[2]['id'], 3)
143138

144139
def test_values_list_method(self):
145-
projects = list(self.redmine.project.all().values_list())
146-
self.assertIn('Foo', projects[0])
147-
self.assertIn('foo', projects[0])
148-
self.assertIn(1, projects[0])
149-
self.assertIn('Bar', projects[1])
150-
self.assertIn('bar', projects[1])
151-
self.assertIn(2, projects[1])
152-
self.assertIn('Baz', projects[2])
153-
self.assertIn('baz', projects[2])
154-
self.assertIn(3, projects[2])
140+
issues = list(self.redmine.issue.all().values_list())
141+
self.assertIn('Foo', issues[0])
142+
self.assertIn(1, issues[0])
143+
self.assertIn('Bar', issues[1])
144+
self.assertIn(2, issues[1])
145+
self.assertIn('Baz', issues[2])
146+
self.assertIn(3, issues[2])
155147

156148
def test_values_list_method_with_fields(self):
157-
projects = list(self.redmine.project.all().values_list('id', 'name'))
158-
self.assertEqual(len(projects[0]), 2)
159-
self.assertEqual(projects[0][0], 1)
160-
self.assertEqual(projects[0][1], 'Foo')
161-
self.assertEqual(len(projects[1]), 2)
162-
self.assertEqual(projects[1][0], 2)
163-
self.assertEqual(projects[1][1], 'Bar')
164-
self.assertEqual(len(projects[2]), 2)
165-
self.assertEqual(projects[2][0], 3)
166-
self.assertEqual(projects[2][1], 'Baz')
149+
issues = list(self.redmine.issue.all().values_list('id', 'subject'))
150+
self.assertEqual(len(issues[0]), 2)
151+
self.assertEqual(issues[0][0], 1)
152+
self.assertEqual(issues[0][1], 'Foo')
153+
self.assertEqual(len(issues[1]), 2)
154+
self.assertEqual(issues[1][0], 2)
155+
self.assertEqual(issues[1][1], 'Bar')
156+
self.assertEqual(len(issues[2]), 2)
157+
self.assertEqual(issues[2][0], 3)
158+
self.assertEqual(issues[2][1], 'Baz')
167159

168160
def test_values_list_method_flattened(self):
169-
projects = list(self.redmine.project.all().values_list('id', flat=True))
170-
self.assertEqual(projects[0], 1)
171-
self.assertEqual(projects[1], 2)
172-
self.assertEqual(projects[2], 3)
161+
issues = list(self.redmine.issue.all().values_list('id', flat=True))
162+
self.assertEqual(issues[0], 1)
163+
self.assertEqual(issues[1], 2)
164+
self.assertEqual(issues[2], 3)
173165

174166
@mock.patch('redminelib.open', mock.mock_open(), create=True)
175167
def test_export(self):
@@ -191,4 +183,4 @@ def test_filter_param_exception(self):
191183
self.assertRaises(exceptions.ResourceSetFilterParamError, lambda: self.redmine.project.all().filter(1))
192184

193185
def test_index_error_exception(self):
194-
self.assertRaises(exceptions.ResourceSetIndexError, lambda: self.redmine.project.all()[6])
186+
self.assertRaises(exceptions.ResourceSetIndexError, lambda: self.redmine.issue.all()[6])

0 commit comments

Comments
 (0)