4242from geonode .facets .providers .category import CategoryFacetProvider
4343from geonode .facets .providers .keyword import KeywordFacetProvider
4444from geonode .facets .providers .region import RegionFacetProvider
45+ from geonode .facets .views import ListFacetsView , GetFacetView
4546from geonode .tests .base import GeoNodeBaseTestSupport
46- import geonode .facets .views as views
4747
4848
4949logger = logging .getLogger (__name__ )
@@ -85,7 +85,7 @@ def _create_thesauri(cls):
8585 for tn in range (2 ):
8686 t = Thesaurus .objects .create (identifier = f"t_{ tn } " , title = f"Thesaurus { tn } " , order = 100 + tn * 10 )
8787 cls .thesauri [tn ] = t
88- for tl in (
88+ for tl in ( # fmt: skip
8989 "en" ,
9090 "it" ,
9191 ):
@@ -94,7 +94,7 @@ def _create_thesauri(cls):
9494 for tkn in range (10 ):
9595 tk = ThesaurusKeyword .objects .create (thesaurus = t , alt_label = f"T{ tn } _K{ tkn } _ALT" )
9696 cls .thesauri_k [f"{ tn } _{ tkn } " ] = tk
97- for tkl in (
97+ for tkl in ( # fmt: skip
9898 "en" ,
9999 "it" ,
100100 ):
@@ -104,7 +104,7 @@ def _create_thesauri(cls):
104104 def _create_regions (cls ):
105105 cls .regions = {}
106106
107- for code , name in (
107+ for code , name in ( # fmt: skip
108108 ("R0" , "Region0" ),
109109 ("R1" , "Region1" ),
110110 ("R2" , "Region2" ),
@@ -115,7 +115,7 @@ def _create_regions(cls):
115115 def _create_categories (cls ):
116116 cls .cats = {}
117117
118- for code , name in (
118+ for code , name in ( # fmt: skip
119119 ("C0" , "Cat0" ),
120120 ("C1" , "Cat1" ),
121121 ("C2" , "Cat2" ),
@@ -126,7 +126,7 @@ def _create_categories(cls):
126126 def _create_keywords (cls ):
127127 cls .kw = {}
128128
129- for code , name in (
129+ for code , name in ( # fmt: skip
130130 ("K0" , "Keyword0" ),
131131 ("K1" , "Keyword1" ),
132132 ("K2" , "Keyword2" ),
@@ -186,22 +186,22 @@ def _create_resources(self):
186186 if (x % 6 ) in (0 , 1 , 2 ):
187187 d .featured = True
188188
189- for reg , idx in (
189+ for reg , idx in ( # fmt: skip
190190 ("R0" , (0 , 1 )),
191191 ("R1" , (0 , 2 , 8 , 13 )),
192192 ):
193193 if x in idx :
194194 d .regions .add (self .regions [reg ])
195195
196- for kw , idx in (
196+ for kw , idx in ( # fmt: skip
197197 ("K0" , (0 , 3 , 4 , 5 )),
198198 ("K1" , [1 , 4 ]),
199199 ("K2" , [2 , 5 ]),
200200 ):
201201 if x in idx :
202202 d .keywords .add (self .kw [kw ])
203203
204- for cat , idx in (
204+ for cat , idx in ( # fmt: skip
205205 ("C0" , [0 , 2 , 4 ]),
206206 ("C1" , [5 , 15 , 16 ]),
207207 ("C2" , [18 , 19 ]),
@@ -218,7 +218,7 @@ def _facets_to_map(facets):
218218
219219 def test_facets_base (self ):
220220 req = self .rf .get (reverse ("list_facets" ), data = {"lang" : "en" })
221- res : JsonResponse = views . list_facets (req )
221+ res : JsonResponse = ListFacetsView . as_view () (req )
222222 obj = json .loads (res .content )
223223 self .assertIn ("facets" , obj )
224224 facets_list = obj ["facets" ]
@@ -238,13 +238,13 @@ def test_facets_rich(self):
238238
239239 # run the request
240240 req = self .rf .get (reverse ("list_facets" ), data = {"include_topics" : 1 , "lang" : "en" })
241- res : JsonResponse = views . list_facets (req )
241+ res : JsonResponse = ListFacetsView . as_view () (req )
242242 obj = json .loads (res .content )
243243
244244 facets_list = obj ["facets" ]
245245 self .assertEqual (8 , len (facets_list ))
246246 fmap = self ._facets_to_map (facets_list )
247- for expected in (
247+ for expected in ( # fmt: skip
248248 {
249249 "name" : "category" ,
250250 "topics" : {
@@ -356,7 +356,7 @@ def test_bad_lang(self):
356356
357357 # run the request with a valid language
358358 req = self .rf .get (reverse ("get_facet" , args = ["t_0" ]), data = {"lang" : "en" })
359- res : JsonResponse = views . get_facet (req , "t_0" )
359+ res : JsonResponse = GetFacetView . as_view () (req , "t_0" )
360360 obj = json .loads (res .content )
361361
362362 self .assertEqual (2 , obj ["topics" ]["total" ])
@@ -366,26 +366,14 @@ def test_bad_lang(self):
366366
367367 # run the request with an INVALID language
368368 req = self .rf .get (reverse ("get_facet" , args = ["t_0" ]), data = {"lang" : "ZZ" })
369- res : JsonResponse = views . get_facet (req , "t_0" )
369+ res : JsonResponse = GetFacetView . as_view () (req , "t_0" )
370370 obj = json .loads (res .content )
371371
372372 self .assertEqual (2 , obj ["topics" ]["total" ])
373373 self .assertEqual (10 , obj ["topics" ]["items" ][0 ]["count" ]) # make sure the count is still there
374374 self .assertEqual ("T0_K0_ALT" , obj ["topics" ]["items" ][0 ]["label" ]) # check for the alternate label
375375 self .assertFalse (obj ["topics" ]["items" ][0 ]["is_localized" ]) # check for the localization flag
376376
377- def test_topics (self ):
378- for facet , keys , exp in (
379- ("t_0" , [self .thesauri_k ["0_0" ].id , self .thesauri_k ["0_1" ].id , - 999 ], 2 ),
380- ("category" , ["C1" , "C2" , "nomatch" ], 2 ),
381- ("owner" , [self .user .id , - 100 ], 1 ),
382- ("region" , ["R0" , "R1" , "nomatch" ], 2 ),
383- ):
384- req = self .rf .get (reverse ("get_facet_topics" , args = [facet ]), data = {"lang" : "en" , "key" : keys })
385- res : JsonResponse = views .get_facet_topics (req , facet )
386- obj = json .loads (res .content )
387- self .assertEqual (exp , len (obj ["topics" ]["items" ]), f"Unexpected topic count { exp } for facet { facet } " )
388-
389377 def test_prefiltering (self ):
390378 reginfo = RegionFacetProvider ().get_info ()
391379 regfilter = reginfo ["filter" ]
@@ -403,7 +391,7 @@ def test_prefiltering(self):
403391 (reginfo ["name" ], {t1filter : self .thesauri_k ["1_0" ].id }, 2 , 3 ),
404392 ):
405393 req = self .rf .get (reverse ("get_facet" , args = [facet ]), data = filters )
406- res : JsonResponse = views . get_facet (req , facet )
394+ res : JsonResponse = GetFacetView . as_view () (req , facet )
407395 obj = json .loads (res .content )
408396 self .assertEqual (totals , obj ["topics" ]["total" ], f"Bad totals for facet '{ facet } and filter { filters } " )
409397 self .assertEqual (count0 , obj ["topics" ]["items" ][0 ]["count" ], f"Bad count0 for facet '{ facet } " )
@@ -423,7 +411,7 @@ def test_prefiltering_tkeywords(self):
423411 (featname , {t1filter : tkey_1_1 }, expected_feat ),
424412 ):
425413 req = self .rf .get (reverse ("get_facet" , args = [facet ]), data = params )
426- res : JsonResponse = views . get_facet (req , facet )
414+ res : JsonResponse = GetFacetView . as_view () (req , facet )
427415 obj = json .loads (res .content )
428416
429417 self .assertEqual (
@@ -439,13 +427,13 @@ def test_prefiltering_tkeywords(self):
439427
440428 # Run the single request
441429 req = self .rf .get (reverse ("list_facets" ), data = {"include_topics" : 1 , t1filter : tkey_1_1 })
442- res : JsonResponse = views . list_facets (req )
430+ res : JsonResponse = ListFacetsView . as_view () (req )
443431 obj = json .loads (res .content )
444432
445433 facets_list = obj ["facets" ]
446434 fmap = self ._facets_to_map (facets_list )
447435
448- for name , items in (
436+ for name , items in ( # fmt: skip
449437 (regname , expected_region ),
450438 (featname , expected_feat ),
451439 ):
@@ -466,7 +454,7 @@ def test_config(self):
466454 ("owner" , "select" , 8 ),
467455 ):
468456 req = self .rf .get (reverse ("get_facet" , args = [facet ]), data = {"include_config" : True })
469- res : JsonResponse = views . get_facet (req , facet )
457+ res : JsonResponse = GetFacetView . as_view () (req , facet )
470458 obj = json .loads (res .content )
471459 self .assertIn ("config" , obj , "Config info not found in payload" )
472460 conf = obj ["config" ]
@@ -525,7 +513,7 @@ def t(tk):
525513 (kwname , {t0filter : t ("0_0" ), regfilter : "R0" , "key" : ["K0" ]}, {"K0" : None }),
526514 ):
527515 req = self .rf .get (reverse ("get_facet" , args = [facet ]), data = params )
528- res : JsonResponse = views . get_facet (req , facet )
516+ res : JsonResponse = GetFacetView . as_view () (req , facet )
529517 obj = json .loads (res .content )
530518 # self.assertEqual(totals, obj["topics"]["total"], f"Bad totals for facet '{facet} and params {params}")
531519
0 commit comments