mirror of
https://github.com/Microsoft/calculator.git
synced 2025-08-21 05:43:10 -07:00
Merge a577692622
into 06eb235d48
This commit is contained in:
commit
45caeeabf2
1 changed files with 97 additions and 98 deletions
|
@ -275,72 +275,75 @@ namespace DateCalculationUnitTests
|
||||||
/* Duration Between Two Date Tests -- Timediff obtained after calculation should be checked to be identical */
|
/* Duration Between Two Date Tests -- Timediff obtained after calculation should be checked to be identical */
|
||||||
TEST_METHOD(TestDateDiff)
|
TEST_METHOD(TestDateDiff)
|
||||||
{
|
{
|
||||||
// TODO - MSFT 10331900, fix this test
|
for (int testIndex = 0; testIndex < c_diffTestCase; testIndex++)
|
||||||
|
{
|
||||||
|
DateDifference diff;
|
||||||
|
DateUnit dateOutputFormat;
|
||||||
|
|
||||||
// for (int testIndex = 0; testIndex < c_diffTestCase; testIndex++)
|
switch (testIndex)
|
||||||
//{
|
{
|
||||||
// DateDifference diff;
|
case 0:
|
||||||
// DateUnit dateOutputFormat;
|
case 2:
|
||||||
|
dateOutputFormat = DateUnit::Year | DateUnit::Month | DateUnit::Day;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
dateOutputFormat = DateUnit::Day;
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
case 8:
|
||||||
|
dateOutputFormat = DateUnit::Week | DateUnit::Day;
|
||||||
|
break;
|
||||||
|
case 7:
|
||||||
|
dateOutputFormat = DateUnit::Year | DateUnit::Month | DateUnit::Day;
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
case 6:
|
||||||
|
dateOutputFormat = DateUnit::Month | DateUnit::Day;
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
dateOutputFormat = DateUnit::Day;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
dateOutputFormat = DateUnit::Year | DateUnit::Month | DateUnit::Day;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
// switch (testIndex)
|
// Calculate the difference
|
||||||
// {
|
bool success = m_DateCalcEngine->TryGetDateDifference(
|
||||||
// case 0:
|
DateUtils::SystemTimeToDateTime(datetimeDifftest[testIndex].startDate),
|
||||||
// case 2:
|
DateUtils::SystemTimeToDateTime(datetimeDifftest[testIndex].endDate),
|
||||||
// dateOutputFormat = DateUnit::Year | DateUnit::Month | DateUnit::Day;
|
dateOutputFormat,
|
||||||
// break;
|
&diff);
|
||||||
// case 1:
|
|
||||||
// dateOutputFormat = DateUnit::Day;
|
|
||||||
// break;
|
|
||||||
// case 3:
|
|
||||||
// case 8:
|
|
||||||
// dateOutputFormat = DateUnit::Week | DateUnit::Day;
|
|
||||||
// break;
|
|
||||||
// case 7:
|
|
||||||
// dateOutputFormat = DateUnit::Year | DateUnit::Month | DateUnit::Day;
|
|
||||||
// break;
|
|
||||||
// case 4:
|
|
||||||
// case 6:
|
|
||||||
// dateOutputFormat = DateUnit::Month | DateUnit::Day;
|
|
||||||
// break;
|
|
||||||
// case 5:
|
|
||||||
// dateOutputFormat = DateUnit::Day;
|
|
||||||
// break;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// // Calculate the difference
|
// Assert for the result
|
||||||
// m_DateCalcEngine->TryGetDateDifference(DateUtils::SystemTimeToDateTime(datetimeDifftest[testIndex].startDate),
|
VERIFY_IS_TRUE(success);
|
||||||
// DateUtils::SystemTimeToDateTime(datetimeDifftest[testIndex].endDate), dateOutputFormat, &diff);
|
|
||||||
|
|
||||||
// // Assert for the result
|
bool areIdentical = true;
|
||||||
// bool areIdentical = true;
|
if (diff.year != datetimeDifftest[testIndex].dateDiff.year ||
|
||||||
// if (diff.year != datetimeDifftest[testIndex].dateDiff.year ||
|
diff.month != datetimeDifftest[testIndex].dateDiff.month ||
|
||||||
// diff.month != datetimeDifftest[testIndex].dateDiff.month ||
|
diff.week != datetimeDifftest[testIndex].dateDiff.week ||
|
||||||
// diff.week != datetimeDifftest[testIndex].dateDiff.week ||
|
diff.day != datetimeDifftest[testIndex].dateDiff.day)
|
||||||
// diff.day != datetimeDifftest[testIndex].dateDiff.day)
|
{
|
||||||
// {
|
areIdentical = false;
|
||||||
// areIdentical = false;
|
}
|
||||||
// }
|
|
||||||
|
|
||||||
// VERIFY_IS_TRUE(areIdentical);
|
VERIFY_IS_TRUE(areIdentical);
|
||||||
//}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*Add Out of bound Tests*/
|
/*Add Out of bound Tests*/
|
||||||
TEST_METHOD(TestAddOob)
|
TEST_METHOD(TestAddOob)
|
||||||
{
|
{
|
||||||
// TODO - MSFT 10331900, fix this test
|
for (int testIndex = 0; testIndex < c_numAddOobDate; testIndex++)
|
||||||
|
{
|
||||||
|
// Add Duration
|
||||||
|
auto endDate = m_DateCalcEngine->AddDuration(
|
||||||
|
DateUtils::SystemTimeToDateTime(datetimeBoundAdd[testIndex].startDate),
|
||||||
|
datetimeBoundAdd[testIndex].dateDiff);
|
||||||
|
|
||||||
// for (int testIndex = 0; testIndex< c_numAddOobDate; testIndex++)
|
// Assert for the result
|
||||||
//{
|
VERIFY_IS_NULL(endDate);
|
||||||
// DateTime endDate;
|
}
|
||||||
|
|
||||||
// // Add Duration
|
|
||||||
// bool isValid = m_DateCalcEngine->AddDuration(DateUtils::SystemTimeToDateTime(datetimeBoundAdd[testIndex].startDate),
|
|
||||||
// datetimeBoundAdd[testIndex].dateDiff, &endDate);
|
|
||||||
|
|
||||||
// // Assert for the result
|
|
||||||
// VERIFY_IS_FALSE(isValid);
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*Subtract Out of bound Tests*/
|
/*Subtract Out of bound Tests*/
|
||||||
|
@ -360,59 +363,55 @@ namespace DateCalculationUnitTests
|
||||||
// Add Tests
|
// Add Tests
|
||||||
TEST_METHOD(TestAddition)
|
TEST_METHOD(TestAddition)
|
||||||
{
|
{
|
||||||
// TODO - MSFT 10331900, fix this test
|
for (int testIndex = 0; testIndex < c_addCases; testIndex++)
|
||||||
|
{
|
||||||
|
// Add Duration
|
||||||
|
auto endDate = m_DateCalcEngine->AddDuration(
|
||||||
|
DateUtils::SystemTimeToDateTime(datetimeAddCase[testIndex].startDate),
|
||||||
|
datetimeAddCase[testIndex].dateDiff);
|
||||||
|
|
||||||
// for (int testIndex = 0; testIndex < c_addCases; testIndex++)
|
// Assert for the result
|
||||||
//{
|
VERIFY_IS_NOT_NULL(endDate);
|
||||||
// DateTime endDate;
|
|
||||||
|
|
||||||
// // Add Duration
|
SYSTEMTIME systemTime = DateUtils::DateTimeToSystemTime(*endDate);
|
||||||
// bool isValid = m_DateCalcEngine->AddDuration(DateUtils::SystemTimeToDateTime(datetimeAddCase[testIndex].startDate),
|
bool isValid = true;
|
||||||
// datetimeAddCase[testIndex].dateDiff, &endDate);
|
if (systemTime.wYear != datetimeAddCase[testIndex].endDate.wYear ||
|
||||||
|
systemTime.wMonth != datetimeAddCase[testIndex].endDate.wMonth ||
|
||||||
|
systemTime.wDay != datetimeAddCase[testIndex].endDate.wDay ||
|
||||||
|
systemTime.wDayOfWeek != datetimeAddCase[testIndex].endDate.wDayOfWeek)
|
||||||
|
{
|
||||||
|
isValid = false;
|
||||||
|
}
|
||||||
|
|
||||||
// // Assert for the result
|
VERIFY_IS_TRUE(isValid);
|
||||||
// VERIFY_IS_TRUE(isValid);
|
}
|
||||||
|
|
||||||
// SYSTEMTIME systemTime = DateUtils::DateTimeToSystemTime(endDate);
|
|
||||||
// if (systemTime.wYear != datetimeAddCase[testIndex].endDate.wYear ||
|
|
||||||
// systemTime.wMonth != datetimeAddCase[testIndex].endDate.wMonth ||
|
|
||||||
// systemTime.wDay != datetimeAddCase[testIndex].endDate.wDay ||
|
|
||||||
// systemTime.wDayOfWeek != datetimeAddCase[testIndex].endDate.wDayOfWeek)
|
|
||||||
// {
|
|
||||||
// isValid = false;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// VERIFY_IS_TRUE(isValid);
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Subtract Tests
|
// Subtract Tests
|
||||||
TEST_METHOD(TestSubtraction)
|
TEST_METHOD(TestSubtraction)
|
||||||
{
|
{
|
||||||
// TODO - MSFT 10331900, fix this test
|
for (int testIndex = 0; testIndex < c_subtractCases; testIndex++)
|
||||||
|
{
|
||||||
|
// Subtract Duration
|
||||||
|
auto endDate = m_DateCalcEngine->SubtractDuration(
|
||||||
|
DateUtils::SystemTimeToDateTime(datetimeSubtractCase[testIndex].startDate),
|
||||||
|
datetimeSubtractCase[testIndex].dateDiff);
|
||||||
|
|
||||||
// for (int testIndex = 0; testIndex < c_subtractCases; testIndex++)
|
// assert for the result
|
||||||
//{
|
VERIFY_IS_NOT_NULL(endDate);
|
||||||
// DateTime endDate;
|
|
||||||
|
|
||||||
// // Subtract Duration
|
SYSTEMTIME systemTime = DateUtils::DateTimeToSystemTime(*endDate);
|
||||||
// bool isValid = m_DateCalcEngine->SubtractDuration(DateUtils::SystemTimeToDateTime(datetimeSubtractCase[testIndex].startDate),
|
bool isValid = true;
|
||||||
// datetimeSubtractCase[testIndex].dateDiff, &endDate);
|
if (systemTime.wYear != datetimeSubtractCase[testIndex].endDate.wYear ||
|
||||||
|
systemTime.wMonth != datetimeSubtractCase[testIndex].endDate.wMonth ||
|
||||||
|
systemTime.wDay != datetimeSubtractCase[testIndex].endDate.wDay ||
|
||||||
|
systemTime.wDayOfWeek != datetimeSubtractCase[testIndex].endDate.wDayOfWeek)
|
||||||
|
{
|
||||||
|
isValid = false;
|
||||||
|
}
|
||||||
|
|
||||||
// // assert for the result
|
VERIFY_IS_TRUE(isValid);
|
||||||
// VERIFY_IS_TRUE(isValid);
|
}
|
||||||
|
|
||||||
// SYSTEMTIME systemTime = DateUtils::DateTimeToSystemTime(endDate);
|
|
||||||
// if (systemTime.wYear != datetimeSubtractCase[testIndex].endDate.wYear ||
|
|
||||||
// systemTime.wMonth != datetimeSubtractCase[testIndex].endDate.wMonth ||
|
|
||||||
// systemTime.wDay != datetimeSubtractCase[testIndex].endDate.wDay ||
|
|
||||||
// systemTime.wDayOfWeek != datetimeSubtractCase[testIndex].endDate.wDayOfWeek)
|
|
||||||
// {
|
|
||||||
// isValid = false;
|
|
||||||
// }
|
|
||||||
|
|
||||||
// VERIFY_IS_TRUE(isValid);
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue