diff --git a/libs/temporal/test/BBTTest.cc b/libs/temporal/test/BBTTest.cc index fc287db11c..ac4db926e1 100644 --- a/libs/temporal/test/BBTTest.cc +++ b/libs/temporal/test/BBTTest.cc @@ -150,4 +150,47 @@ BBTTest::deltaTest () o = m.bbt_delta (b, a); CPPUNIT_ASSERT_EQUAL (BBT_Offset (0, 10, 841), o); + + a = BBT_Time (1, 1, 0); + b = BBT_Time (10, 1, 0); + o = m.bbt_delta (b, a); + + CPPUNIT_ASSERT_EQUAL (BBT_Offset (9, 0, 0), o); + + a = BBT_Time (1, 12, 0); + b = BBT_Time (10, 1, 0); + o = m.bbt_delta (b, a); + + CPPUNIT_ASSERT_EQUAL (BBT_Offset (8, 1, 0), o); + + a = BBT_Time (1, 1, 0); + b = BBT_Time (1, 1, 1); + o = m.bbt_delta (b, a); + + CPPUNIT_ASSERT_EQUAL (BBT_Offset (0, 0, 1), o); + + a = BBT_Time (1, 1, 960); + b = BBT_Time (1, 2, 0); + o = m.bbt_delta (b, a); + + CPPUNIT_ASSERT_EQUAL (BBT_Offset (0, 0, 0), o); + + a = BBT_Time (1, 1, 959); + b = BBT_Time (1, 2, 0); + o = m.bbt_delta (b, a); + + CPPUNIT_ASSERT_EQUAL (BBT_Offset (0, 0, 1), o); + + + a = BBT_Time (1, 1, 480); + b = BBT_Time (1, 2, 959); + o = m.bbt_delta (b, a); + + CPPUNIT_ASSERT_EQUAL (BBT_Offset (0, 1, 479), o); + + a = BBT_Time (1, 1, 480); + b = BBT_Time (1, 1, 959); + o = m.bbt_delta (b, a); + + CPPUNIT_ASSERT_EQUAL (BBT_Offset (0, 0, 479), o); }