@@ -304,3 +304,92 @@ def test_to_string(self):
304304 )
305305 descriptor_str_ultra_combined = md_ultra_combined .to_string ()
306306 assert descriptor_str_ultra_combined == "ulc-ena-h-sf-nsp-full-hae-nside32-1yr"
307+
308+ @pytest .mark .parametrize (
309+ "descriptor_str, expected_catdesc" ,
310+ [
311+ (
312+ "h45-spx-h-hf-sp-ram-hae-4deg-3mo" ,
313+ "IMAP Hi45 H Spectral, HAE Helio Frame, Surv Corr, Ram, 4 deg, 3 Mon" ,
314+ ),
315+ (
316+ "h45-spx0305-h-hf-sp-ram-hae-4deg-3mo" ,
317+ "IMAP Hi45 H Spectral, HAE Helio Frame, Surv Corr, Ram, 4 deg, 3 Mon" ,
318+ ),
319+ (
320+ "hic-ena-h-hf-sp-ram-hae-4deg-3mo" ,
321+ "IMAP Hi Combined H Inten, HAE Helio Frame, Surv Corr, Ram,"
322+ " 4 deg, 3 Mon" ,
323+ ),
324+ (
325+ "u45-ena-h-hf-sp-ram-hae-4deg-3mo" ,
326+ "IMAP Ultra45 H Inten, HAE Helio Frame, Surv Corr, Ram, 4 deg, 3 Mon" ,
327+ ),
328+ (
329+ "u45-ena-h-hf-sp-full-hae-4deg-3mo" ,
330+ "IMAP Ultra45 H Inten, HAE Helio Frame, Surv Corr, Full Spin,"
331+ " 4 deg, 3 Mon" ,
332+ ),
333+ (
334+ "u45-ena-h-hf-sp-ram-hae-nside128-3mo" ,
335+ "IMAP Ultra45 H Inten, HAE Helio Frame, Surv Corr, Ram, NSide 128,"
336+ " 3 Mon" ,
337+ ),
338+ (
339+ "u45-enaCUSTOM-h-hf-sp-ram-hae-4deg-3mo" ,
340+ "IMAP Ultra45 H Inten, HAE Helio Frame, Surv Corr, Ram, 4 deg, 3 Mon" ,
341+ ),
342+ (
343+ "l090-enanbs-h-sf-nsp-ram-hae-6deg-1yr" ,
344+ "IMAP Lo90 H Inten, HAE SC Frame, No Surv Corr, Ram, 6 deg, 1 Yr,"
345+ " No sputter/bootstrap" ,
346+ ),
347+ (
348+ "t090-ena-o-sf-nsp-ram-hae-6deg-1yr" ,
349+ "IMAP Lo90 O Inten, HAE SC Frame, No Surv Corr, Ram, 6 deg, 1 Yr" ,
350+ ),
351+ (
352+ "l090-ena-h-hf-nsp-ram-gcs-6deg-1yr" ,
353+ "IMAP Lo90 H Inten, GCS Helio Frame, No Surv Corr, Ram, 6 deg, 1 Yr" ,
354+ ),
355+ (
356+ "l090-isn-h-sf-nsp-ram-hae-6deg-1yr" ,
357+ "IMAP Lo90 ISN H Rate, HAE SC Frame, No Surv Corr, Ram, 6 deg, 1 Yr" ,
358+ ),
359+ (
360+ "l090-isnnbkgnd-h-sf-nsp-ram-hae-6deg-1yr" ,
361+ "IMAP Lo90 ISN H Rate, HAE SC Frame, No Surv Corr, Ram, 6 deg, 1 Yr,"
362+ " No bkgnd sub" ,
363+ ),
364+ (
365+ "glx-int-uv-sf-nsp-full-hae-6deg-1yr" ,
366+ "IMAP GLOWS UV Inten, HAE SC Frame, No Surv Corr, Full Spin, 6 deg,"
367+ " 1 Yr" ,
368+ ),
369+ (
370+ "idx-drt-dust-sf-nsp-full-hae-6deg-1yr" ,
371+ "IMAP IDEX Dust Rate, HAE SC Frame, No Surv Corr, Full Spin, 6 deg,"
372+ " 1 Yr" ,
373+ ),
374+ ],
375+ )
376+ def test_to_catdesc (self , descriptor_str , expected_catdesc ):
377+ # Use case is primarily from descriptor str to CATDESC
378+ md = MapDescriptor .from_string (descriptor_str )
379+ actual_catdesc = md .to_catdesc ()
380+ assert actual_catdesc == expected_catdesc
381+
382+ @pytest .mark .parametrize (
383+ "descriptor_str, expected_principal_data_var" ,
384+ [
385+ ("hic-ena-h-hf-sp-ram-hae-4deg-3mo" , "ena_intensity" ),
386+ ("h45-spx0305-h-hf-sp-ram-hae-4deg-3mo" , "ena_spectral_index" ),
387+ ("idx-drt-dust-sf-nsp-full-hae-6deg-1yr" , "dust_rate" ),
388+ ("glx-int-uv-sf-nsp-full-hae-6deg-1yr" , "glows_rate" ),
389+ ("l090-isnnbkgnd-h-sf-nsp-ram-hae-6deg-1yr" , "isn_rate" ),
390+ ("l090-isn-h-sf-nsp-ram-hae-6deg-1yr" , "isn_rate_bg_subtracted" ),
391+ ],
392+ )
393+ def test_principal_data_var (self , descriptor_str , expected_principal_data_var ):
394+ md = MapDescriptor .from_string (descriptor_str )
395+ assert md .principal_data_var == expected_principal_data_var
0 commit comments