33 def test_json_rsetexport(self): |
33 def test_json_rsetexport(self): |
34 req = self.request() |
34 req = self.request() |
35 rset = req.execute('Any GN,COUNT(X) GROUPBY GN ORDERBY GN WHERE X in_group G, G name GN') |
35 rset = req.execute('Any GN,COUNT(X) GROUPBY GN ORDERBY GN WHERE X in_group G, G name GN') |
36 data = self.view('jsonexport', rset) |
36 data = self.view('jsonexport', rset) |
37 self.assertEqual(req.headers_out.getRawHeaders('content-type'), ['application/json']) |
37 self.assertEqual(req.headers_out.getRawHeaders('content-type'), ['application/json']) |
38 self.assertEqual(data, '[["guests", 1], ["managers", 1]]') |
38 self.assertListEqual(data, [["guests", 1], ["managers", 1]]) |
39 |
39 |
40 def test_json_rsetexport_empty_rset(self): |
40 def test_json_rsetexport_empty_rset(self): |
41 req = self.request() |
41 req = self.request() |
42 rset = req.execute('Any X WHERE X is CWUser, X login "foobarbaz"') |
42 rset = req.execute('Any X WHERE X is CWUser, X login "foobarbaz"') |
43 data = self.view('jsonexport', rset) |
43 data = self.view('jsonexport', rset) |
44 self.assertEqual(req.headers_out.getRawHeaders('content-type'), ['application/json']) |
44 self.assertEqual(req.headers_out.getRawHeaders('content-type'), ['application/json']) |
45 self.assertEqual(data, '[]') |
45 self.assertListEqual(data, []) |
46 |
46 |
47 def test_json_rsetexport_with_jsonp(self): |
47 def test_json_rsetexport_with_jsonp(self): |
48 req = self.request() |
48 req = self.request() |
49 req.form.update({'callback': 'foo', |
49 req.form.update({'callback': 'foo', |
50 'rql': 'Any GN,COUNT(X) GROUPBY GN ORDERBY GN WHERE X in_group G, G name GN', |
50 'rql': 'Any GN,COUNT(X) GROUPBY GN ORDERBY GN WHERE X in_group G, G name GN', |
66 self.assertEqual(data, 'foo(%s)' % self.res_jsonp_data) |
66 self.assertEqual(data, 'foo(%s)' % self.res_jsonp_data) |
67 |
67 |
68 def test_json_ersetexport(self): |
68 def test_json_ersetexport(self): |
69 req = self.request() |
69 req = self.request() |
70 rset = req.execute('Any G ORDERBY GN WHERE G is CWGroup, G name GN') |
70 rset = req.execute('Any G ORDERBY GN WHERE G is CWGroup, G name GN') |
71 data = json.loads(self.view('ejsonexport', rset)) |
71 data = self.view('ejsonexport', rset) |
72 self.assertEqual(req.headers_out.getRawHeaders('content-type'), ['application/json']) |
72 self.assertEqual(req.headers_out.getRawHeaders('content-type'), ['application/json']) |
73 self.assertEqual(data[0]['name'], 'guests') |
73 self.assertEqual(data[0]['name'], 'guests') |
74 self.assertEqual(data[1]['name'], 'managers') |
74 self.assertEqual(data[1]['name'], 'managers') |
75 |
75 |
76 |
76 |