@@ -947,6 +947,25 @@ def test_decode_time(self):
947
947
948
948
949
949
class Test_num2date :
950
+ def setup_units (self , calendar ):
951
+ self .useconds = cf_units .Unit ("seconds since 1970-01-01" , calendar )
952
+ self .uminutes = cf_units .Unit ("minutes since 1970-01-01" , calendar )
953
+ self .uhours = cf_units .Unit ("hours since 1970-01-01" , calendar )
954
+ self .udays = cf_units .Unit ("days since 1970-01-01" , calendar )
955
+
956
+ def check_dates (self , nums , units , expected , only_cftime = True ):
957
+ for num , unit , exp in zip (nums , units , expected ):
958
+ res = unit .num2date (num , only_use_cftime_datetimes = only_cftime )
959
+ assert exp == res
960
+ assert isinstance (res , type (exp ))
961
+
962
+ def check_timedelta (self , nums , units , expected ):
963
+ for num , unit , exp in zip (nums , units , expected ):
964
+ epoch = cftime .num2date (0 , unit .cftime_unit , unit .calendar )
965
+ res = unit .num2date (num )
966
+ delta = res - epoch
967
+ assert (delta .days , delta .seconds , delta .microseconds ) == exp
968
+
950
969
def test_num2date (self ):
951
970
u = Unit (
952
971
"hours since 2010-11-02 12:00:00" ,
@@ -980,25 +999,6 @@ def test_num2date_wrong_calendar(self):
980
999
only_use_python_datetimes = True ,
981
1000
)
982
1001
983
- def setup_units (self , calendar ):
984
- self .useconds = cf_units .Unit ("seconds since 1970-01-01" , calendar )
985
- self .uminutes = cf_units .Unit ("minutes since 1970-01-01" , calendar )
986
- self .uhours = cf_units .Unit ("hours since 1970-01-01" , calendar )
987
- self .udays = cf_units .Unit ("days since 1970-01-01" , calendar )
988
-
989
- def check_dates (self , nums , units , expected , only_cftime = True ):
990
- for num , unit , exp in zip (nums , units , expected ):
991
- res = unit .num2date (num , only_use_cftime_datetimes = only_cftime )
992
- assert exp == res
993
- assert isinstance (res , type (exp ))
994
-
995
- def check_timedelta (self , nums , units , expected ):
996
- for num , unit , exp in zip (nums , units , expected ):
997
- epoch = cftime .num2date (0 , unit .cftime_unit , unit .calendar )
998
- res = unit .num2date (num )
999
- delta = res - epoch
1000
- assert (delta .days , delta .seconds , delta .microseconds ) == exp
1001
-
1002
1002
def test_scalar (self ):
1003
1003
unit = cf_units .Unit ("seconds since 1970-01-01" , "gregorian" )
1004
1004
num = 5.0
0 commit comments