@@ -757,6 +757,16 @@ def test_compute_vertical_coordinates(self):
757
757
g = f .compute_vertical_coordinates (verbose = None )
758
758
altitude = g .auxiliary_coordinate ("altitude" )
759
759
760
+ # Test the 'key' parameter
761
+ k = f .compute_vertical_coordinates (key = True , verbose = None )
762
+ self .assertEqual (len (k ), 2 ) # expect a 2-tuple of field then key
763
+ self .assertTrue (k [0 ].equals (g )) # field result, same as above
764
+ self .assertEqual (k [1 ], "auxiliarycoordinate3" ) # i.e. key for altitude
765
+ # key=True and inplace=True are incompatible inputs
766
+ with self .assertRaises (ValueError ):
767
+ k = f .compute_vertical_coordinates (
768
+ key = True , inplace = True , verbose = None )
769
+
760
770
self .assertTrue (altitude )
761
771
self .assertTrue (altitude .has_bounds ())
762
772
self .assertEqual (altitude .shape , (1 ,) + orog .shape )
@@ -881,6 +891,11 @@ def test_compute_vertical_coordinates(self):
881
891
f = cf .example_field (0 )
882
892
g = f .compute_vertical_coordinates ()
883
893
self .assertTrue (g .equals (f ))
894
+ # With key=True, expect the key (second in return 2-tuple) to be None
895
+ k = f .compute_vertical_coordinates (key = True )
896
+ self .assertEqual (len (k ), 2 )
897
+ self .assertTrue (k [0 ].equals (f ))
898
+ self .assertEqual (k [1 ], None )
884
899
885
900
# ------------------------------------------------------------
886
901
# Check other types
0 commit comments