@@ -369,6 +369,57 @@ def test_today(self):
369369 self .assertTrue (abs (ts_from_string_tz .tz_localize (None )
370370 - ts_from_method_tz .tz_localize (None )) < delta )
371371
372+ def test_timestamp_property (self ):
373+ # GH 10050
374+ ts = Timestamp ('2015-05-10 09:06:03.000100001' )
375+ self .assertEqual (ts .year , 2015 )
376+ self .assertTrue (isinstance (ts .year , int ))
377+ self .assertEqual (ts .month , 5 )
378+ self .assertTrue (isinstance (ts .month , int ))
379+ self .assertEqual (ts .day , 10 )
380+ self .assertTrue (isinstance (ts .day , int ))
381+ self .assertEqual (ts .hour , 9 )
382+ self .assertTrue (isinstance (ts .hour , int ))
383+ self .assertEqual (ts .minute , 6 )
384+ self .assertTrue (isinstance (ts .minute , int ))
385+ self .assertEqual (ts .second , 3 )
386+ self .assertTrue (isinstance (ts .second , int ))
387+ self .assertEqual (ts .microsecond , 100 )
388+ self .assertTrue (isinstance (ts .microsecond , int ))
389+ self .assertEqual (ts .nanosecond , 1 )
390+ self .assertTrue (isinstance (ts .nanosecond , int ))
391+ self .assertEqual (ts .dayofweek , 6 )
392+ self .assertTrue (isinstance (ts .dayofweek , int ))
393+ self .assertEqual (ts .quarter , 2 )
394+ self .assertTrue (isinstance (ts .quarter , int ))
395+ self .assertEqual (ts .dayofyear , 130 )
396+ self .assertTrue (isinstance (ts .dayofyear , int ))
397+ self .assertEqual (ts .week , 19 )
398+ self .assertTrue (isinstance (ts .week , int ))
399+ self .assertEqual (ts .daysinmonth , 31 )
400+ self .assertTrue (isinstance (ts .days_in_month , int ))
401+ self .assertEqual (ts .daysinmonth , 31 )
402+ self .assertTrue (isinstance (ts .daysinmonth , int ))
403+
404+ def test_nat_property (self ):
405+ # GH 10050
406+ ts = Timestamp ('NaT' )
407+ self .assertTrue (np .isnan (ts .year ))
408+ self .assertTrue (np .isnan (ts .month ))
409+ self .assertTrue (np .isnan (ts .day ))
410+ self .assertTrue (np .isnan (ts .hour ))
411+ self .assertTrue (np .isnan (ts .minute ))
412+ self .assertTrue (np .isnan (ts .second ))
413+ self .assertTrue (np .isnan (ts .microsecond ))
414+ self .assertTrue (np .isnan (ts .nanosecond ))
415+ self .assertTrue (np .isnan (ts .dayofweek ))
416+ self .assertTrue (np .isnan (ts .quarter ))
417+ self .assertTrue (np .isnan (ts .dayofyear ))
418+ self .assertTrue (np .isnan (ts .week ))
419+ self .assertTrue (np .isnan (ts .daysinmonth ))
420+ self .assertTrue (np .isnan (ts .days_in_month ))
421+
422+
372423class TestDatetimeParsingWrappers (tm .TestCase ):
373424 def test_does_not_convert_mixed_integer (self ):
374425 bad_date_strings = (
0 commit comments