@@ -41,6 +41,12 @@ def pc_no_stats_item() -> pystac.Item:
4141def plain_item () -> pystac .Item :
4242 return pystac .Item .from_file (TestCases .get_path ("data-files/item/sample-item.json" ))
4343
44+ @pytest .fixture
45+ def collection () -> pystac .Collection :
46+ return pystac .Collection .from_file (
47+ TestCases .get_path ("data-files/collections/multi-extent.json" )
48+ )
49+
4450def test_to_from_dict (example_uri : str ) -> None :
4551 with open (example_uri ) as f :
4652 d = json .load (f )
@@ -328,87 +334,76 @@ def test_asset_ext_add_to(plain_item: pystac.Item) -> None:
328334 assert PointcloudExtension .get_schema_uri () in plain_item .stac_extensions
329335
330336
331- class PointcloudSummariesTest (unittest .TestCase ):
332- def setUp (self ) -> None :
333- self .collection = pystac .Collection .from_file (
334- TestCases .get_path ("data-files/collections/multi-extent.json" )
335- )
337+ def test_summaries_count (collection : pystac .Collection ) -> None :
338+ summaries_ext = PointcloudExtension .summaries (collection , True )
339+ count_range = RangeSummary (1000 , 10000 )
336340
337- def test_count (self ) -> None :
338- collection = self .collection .clone ()
339- summaries_ext = PointcloudExtension .summaries (collection , True )
340- count_range = RangeSummary (1000 , 10000 )
341+ summaries_ext .count = count_range
341342
342- summaries_ext .count = count_range
343+ assert summaries_ext .count = = count_range
343344
344- # TODO rest of assertions
345- assert summaries_ext .count == count_range
345+ summaries_dict = collection .to_dict ()["summaries" ]
346346
347- summaries_dict = collection .to_dict ()[ "summaries" ]
347+ assert summaries_dict [ "pc:count" ] == count_range .to_dict ()
348348
349- assert summaries_dict ["pc:count" ] == count_range .to_dict ()
349+ def test_summaries_type (collection : pystac .Collection ) -> None :
350+ summaries_ext = PointcloudExtension .summaries (collection , True )
351+ type_list = [PhenomenologyType .LIDAR , "something" ]
350352
351- def test_type (self ) -> None :
352- collection = self .collection .clone ()
353- summaries_ext = PointcloudExtension .summaries (collection , True )
354- type_list = [PhenomenologyType .LIDAR , "something" ]
353+ summaries_ext .type = type_list
355354
356- summaries_ext .type = type_list
355+ assert summaries_ext .type = = type_list
357356
358- assert summaries_ext . type == type_list
357+ summaries_dict = collection . to_dict ()[ "summaries" ]
359358
360- summaries_dict = collection . to_dict ()[ "summaries" ]
359+ assert summaries_dict [ "pc:type" ] == type_list
361360
362- assert summaries_dict ["pc:type" ] == type_list
363361
364- def test_encoding (self ) -> None :
365- collection = self .collection .clone ()
366- summaries_ext = PointcloudExtension .summaries (collection , True )
367- encoding_list = ["LASzip" ]
362+ def test_summaries_encoding (collection : pystac .Collection ) -> None :
363+ summaries_ext = PointcloudExtension .summaries (collection , True )
364+ encoding_list = ["LASzip" ]
368365
369- summaries_ext .encoding = encoding_list
366+ summaries_ext .encoding = encoding_list
370367
371- assert summaries_ext .encoding == encoding_list
368+ assert summaries_ext .encoding == encoding_list
372369
373- summaries_dict = collection .to_dict ()["summaries" ]
370+ summaries_dict = collection .to_dict ()["summaries" ]
374371
375- assert summaries_dict ["pc:encoding" ] == encoding_list
372+ assert summaries_dict ["pc:encoding" ] == encoding_list
376373
377- def test_density (self ) -> None :
378- collection = self .collection .clone ()
379- summaries_ext = PointcloudExtension .summaries (collection , True )
380- density_range = RangeSummary (500.0 , 1000.0 )
374+ def test_summaries_density (collection : pystac .Collection ) -> None :
375+ summaries_ext = PointcloudExtension .summaries (collection , True )
376+ density_range = RangeSummary (500.0 , 1000.0 )
381377
382- summaries_ext .density = density_range
378+ summaries_ext .density = density_range
383379
384- assert summaries_ext .density == density_range
380+ assert summaries_ext .density == density_range
385381
386- summaries_dict = collection .to_dict ()["summaries" ]
382+ summaries_dict = collection .to_dict ()["summaries" ]
387383
388- assert summaries_dict ["pc:density" ] == density_range .to_dict ()
384+ assert summaries_dict ["pc:density" ] == density_range .to_dict ()
389385
390- def test_statistics (self ) -> None :
391- collection = self .collection .clone ()
392- summaries_ext = PointcloudExtension .summaries (collection , True )
393- statistics_list = [
394- Statistic (
395- {
396- "average" : 637294.1783 ,
397- "count" : 10653336 ,
398- "maximum" : 639003.73 ,
399- "minimum" : 635577.79 ,
400- "name" : "X" ,
401- "position" : 0 ,
402- "stddev" : 967.9329805 ,
403- "variance" : 936894.2548 ,
404- }
405- )
406- ]
386+ def test_summaries_statistics (collection : pystac .Collection ) -> None :
387+ summaries_ext = PointcloudExtension .summaries (collection , True )
388+ statistics_list = [
389+ Statistic (
390+ {
391+ "average" : 637294.1783 ,
392+ "count" : 10653336 ,
393+ "maximum" : 639003.73 ,
394+ "minimum" : 635577.79 ,
395+ "name" : "X" ,
396+ "position" : 0 ,
397+ "stddev" : 967.9329805 ,
398+ "variance" : 936894.2548 ,
399+ }
400+ )
401+ ]
407402
408- summaries_ext .statistics = statistics_list
403+ summaries_ext .statistics = statistics_list
409404
410- assert summaries_ext .statistics == statistics_list
405+ assert summaries_ext .statistics == statistics_list
411406
412- summaries_dict = collection .to_dict ()["summaries" ]
407+ summaries_dict = collection .to_dict ()["summaries" ]
413408
414- assert summaries_dict ["pc:statistics" ] == [s .to_dict () for s in statistics_list ]
409+ assert summaries_dict ["pc:statistics" ] == [s .to_dict () for s in statistics_list ]
0 commit comments