@@ -255,6 +255,18 @@ def test_constructor_keyword(self):
255
255
hour = 1 , minute = 2 , second = 3 , microsecond = 999999 )),
256
256
repr (Timestamp ('2015-11-12 01:02:03.999999' )))
257
257
258
+ def test_constructor_fromordinal (self ):
259
+ base = datetime .datetime (2000 , 1 , 1 )
260
+
261
+ ts = Timestamp .fromordinal (base .toordinal (), freq = 'D' )
262
+ self .assertEqual (base , ts )
263
+ self .assertEqual (ts .freq , 'D' )
264
+ self .assertEqual (base .toordinal (), ts .toordinal ())
265
+
266
+ ts = Timestamp .fromordinal (base .toordinal (), tz = 'US/Eastern' )
267
+ self .assertEqual (pd .Timestamp ('2000-01-01' , tz = 'US/Eastern' ), ts )
268
+ self .assertEqual (base .toordinal (), ts .toordinal ())
269
+
258
270
def test_constructor_offset_depr (self ):
259
271
# GH 12160
260
272
with tm .assert_produces_warning (FutureWarning ,
@@ -270,6 +282,21 @@ def test_constructor_offset_depr(self):
270
282
with tm .assertRaisesRegexp (TypeError , msg ):
271
283
Timestamp ('2011-01-01' , offset = 'D' , freq = 'D' )
272
284
285
+ def test_constructor_offset_depr_fromordinal (self ):
286
+ # GH 12160
287
+ base = datetime .datetime (2000 , 1 , 1 )
288
+
289
+ with tm .assert_produces_warning (FutureWarning ,
290
+ check_stacklevel = False ):
291
+ ts = Timestamp .fromordinal (base .toordinal (), offset = 'D' )
292
+ self .assertEqual (pd .Timestamp ('2000-01-01' ), ts )
293
+ self .assertEqual (ts .freq , 'D' )
294
+ self .assertEqual (base .toordinal (), ts .toordinal ())
295
+
296
+ msg = "Can only specify freq or offset, not both"
297
+ with tm .assertRaisesRegexp (TypeError , msg ):
298
+ Timestamp .fromordinal (base .toordinal (), offset = 'D' , freq = 'D' )
299
+
273
300
def test_conversion (self ):
274
301
# GH 9255
275
302
ts = Timestamp ('2000-01-01' )
0 commit comments