@@ -60,20 +60,54 @@ def test_get_paginated_list(self):
6060 self .assertEqual (response .status_code , 404 )
6161
6262 # GET PREVIEW
63- response = self .client .get (
64- reverse ("page-list" , kwargs = {"language" : "en" }) + "?preview"
65- )
63+ response = self .client .get (reverse ("page-list" , kwargs = {"language" : "en" }) + "?preview" )
6664 self .assertEqual (response .status_code , 403 )
6765
68- response = self .client .get (
69- reverse ("page-list" , kwargs = {"language" : "xx" }) + "?preview"
70- )
66+ response = self .client .get (reverse ("page-list" , kwargs = {"language" : "xx" }) + "?preview" )
7167 self .assertEqual (response .status_code , 403 )
7268
7369 # GET PREVIEW - Protected
7470 def test_get_protected (self ):
7571 self .client .force_login (self .user )
76- response = self .client .get (
77- reverse ("page-list" , kwargs = {"language" : "en" }) + "?preview"
78- )
72+ response = self .client .get (reverse ("page-list" , kwargs = {"language" : "en" }) + "?preview" )
7973 self .assertEqual (response .status_code , 200 )
74+
75+ def test_page_search (self ):
76+ for page in self .pages :
77+ page_content = page .get_admin_content ("en" )
78+ if hasattr (page_content , "versions" ):
79+ page_content .versions .first ().publish (self .get_superuser ())
80+
81+ # GET
82+ response = self .client .get (reverse ("page-search" , kwargs = {"language" : "en" }) + "?q=1" )
83+ self .assertEqual (response .status_code , 200 )
84+ data = response .json ()
85+ results = data ["results" ]
86+
87+ # Validate REST Pagination Attributes
88+ self .assertIn ("count" , data )
89+ self .assertIn ("next" , data )
90+ self .assertIn ("previous" , data )
91+ self .assertIn ("results" , data )
92+ self .assertIsInstance (results , list )
93+ self .assertEqual (data ["count" ], 4 )
94+
95+ def test_empty_page_search (self ):
96+ for page in self .pages :
97+ page_content = page .get_admin_content ("en" )
98+ if hasattr (page_content , "versions" ):
99+ page_content .versions .first ().publish (self .get_superuser ())
100+
101+ # GET
102+ response = self .client .get (reverse ("page-search" , kwargs = {"language" : "en" }))
103+ self .assertEqual (response .status_code , 200 )
104+ data = response .json ()
105+ results = data ["results" ]
106+
107+ # Validate REST Pagination Attributes
108+ self .assertIn ("count" , data )
109+ self .assertIn ("next" , data )
110+ self .assertIn ("previous" , data )
111+ self .assertIn ("results" , data )
112+ self .assertIsInstance (results , list )
113+ self .assertEqual (data ["count" ], 0 )
0 commit comments