@@ -35,11 +35,68 @@ def test_key_in_list_result(self):
3535 }]}
3636
3737 json_content = json .loads (response .content )
38+ meta = json_content .get ("meta" )
39+
40+ self .assertEquals (expected .get ('user' ), json_content .get ('user' ))
41+ self .assertEquals (meta .get ('count' , 0 ),
42+ get_user_model ().objects .count ())
43+ self .assertEquals (meta .get ("next" ), 2 )
44+ self .assertEqual (meta .get ("page" ), 1 )
45+
46+ def test_page_two_in_list_result (self ):
47+ """
48+ Ensure that the second page is reachable and is the correct data.
49+ """
50+ response = self .client .get (self .list_url , {'page' : 2 })
51+ self .assertEqual (response .status_code , 200 )
52+
53+ user = get_user_model ().objects .all ()[1 ]
54+ expected = {"user" : [{
55+ 'id' : user .pk ,
56+ 'first_name' : user .first_name ,
57+ 'last_name' : user .last_name ,
58+ 'email' : user .email
59+ }]}
60+
61+ json_content = json .loads (response .content )
62+ meta = json_content .get ("meta" )
63+
64+ self .assertEquals (expected .get ('user' ), json_content .get ('user' ))
65+ self .assertEquals (meta .get ('count' , 0 ),
66+ get_user_model ().objects .count ())
67+ self .assertIsNone (meta .get ("next" ))
68+ self .assertEqual (meta .get ("previous" ), 1 )
69+ self .assertEqual (meta .get ("page" ), 2 )
70+
71+ def test_page_range_in_list_result (self ):
72+ """
73+ Ensure that the range of a page can be changed from the client.
74+ """
75+ response = self .client .get (self .list_url , {'page_size' : 2 })
76+ self .assertEqual (response .status_code , 200 )
77+
78+ users = get_user_model ().objects .all ()
79+ expected = {"user" : [
80+ {
81+ 'id' : users [0 ].pk ,
82+ 'first_name' : users [0 ].first_name ,
83+ 'last_name' : users [0 ].last_name ,
84+ 'email' : users [0 ].email
85+ },
86+ {
87+ 'id' : users [1 ].pk ,
88+ 'first_name' : users [1 ].first_name ,
89+ 'last_name' : users [1 ].last_name ,
90+ 'email' : users [1 ].email
91+ }]}
92+
93+ json_content = json .loads (response .content )
94+ meta = json_content .get ("meta" )
3895 self .assertEquals (expected .get ('user' ), json_content .get ('user' ))
39- self .assertEquals (
40- json_content .get ("meta" , {}).get ('count' , 0 ),
96+ self .assertEquals (meta .get ('count' , 0 ),
4197 get_user_model ().objects .count ())
4298
99+
43100 def test_key_in_detail_result (self ):
44101 """
45102 Ensure the result has a "user" key.
0 commit comments