MCPcopy Index your code
hub / github.com/python/cpython / test_combine

Method test_combine

Lib/test/datetimetester.py:3212–3244  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

3210 self.assertEqual(dt.time(), time(18, 45, 3, 1234))
3211
3212 def test_combine(self):
3213 d = date(2002, 3, 4)
3214 t = time(18, 45, 3, 1234)
3215 expected = self.theclass(2002, 3, 4, 18, 45, 3, 1234)
3216 combine = self.theclass.combine
3217 dt = combine(d, t)
3218 self.assertEqual(dt, expected)
3219
3220 dt = combine(time=t, date=d)
3221 self.assertEqual(dt, expected)
3222
3223 self.assertEqual(d, dt.date())
3224 self.assertEqual(t, dt.time())
3225 self.assertEqual(dt, combine(dt.date(), dt.time()))
3226
3227 self.assertRaises(TypeError, combine) # need an arg
3228 self.assertRaises(TypeError, combine, d) # need two args
3229 self.assertRaises(TypeError, combine, t, d) # args reversed
3230 self.assertRaises(TypeError, combine, d, t, 1) # wrong tzinfo type
3231 self.assertRaises(TypeError, combine, d, t, 1, 2) # too many args
3232 self.assertRaises(TypeError, combine, "date", "time") # wrong types
3233 self.assertRaises(TypeError, combine, d, "time") # wrong type
3234 self.assertRaises(TypeError, combine, "date", t) # wrong type
3235
3236 # tzinfo= argument
3237 dt = combine(d, t, timezone.utc)
3238 self.assertIs(dt.tzinfo, timezone.utc)
3239 dt = combine(d, t, tzinfo=timezone.utc)
3240 self.assertIs(dt.tzinfo, timezone.utc)
3241 t = time()
3242 dt = combine(dt, t)
3243 self.assertEqual(dt.date(), d)
3244 self.assertEqual(dt.time(), t)
3245
3246 def test_replace(self):
3247 cls = self.theclass

Callers

nothing calls this directly

Calls 8

dateClass · 0.90
timeClass · 0.90
combineFunction · 0.85
dateMethod · 0.80
assertEqualMethod · 0.45
timeMethod · 0.45
assertRaisesMethod · 0.45
assertIsMethod · 0.45

Tested by

no test coverage detected