Updated Calculator diagnostic data collection per the specification (#572)

- Removed unneeded diagnostic events and code
- Added and consolidated events into the events defined in the spec
This commit is contained in:
Stephanie Anderl
2019-07-17 18:09:39 -07:00
committed by Matt Cooley
parent 2ff7bb4089
commit a6384269bc
43 changed files with 449 additions and 1249 deletions

View File

@@ -576,7 +576,7 @@ namespace CalculatorUnitTests
for (String ^ &input : inputs)
{
// paste number in standard mode and then validate the pastability of displayed number for other modes
scvm->OnPaste(input, ViewMode::Standard);
scvm->OnPaste(input);
VERIFY_ARE_EQUAL(ValidateStandardPasteExpression(scvm->DisplayValue), scvm->DisplayValue);
VERIFY_ARE_EQUAL(ValidateScientificPasteExpression(scvm->DisplayValue), scvm->DisplayValue);
VERIFY_ARE_EQUAL(ValidateProgrammerHexQwordPasteExpression(scvm->DisplayValue), scvm->DisplayValue);

View File

@@ -387,26 +387,26 @@ namespace CalculatorUnitTests
{
m_viewModel->IsScientific = false;
m_viewModel->OnPaste("-0.99", ViewMode::Standard);
m_viewModel->OnPaste("-0.99");
ValidateViewModelValueAndExpression("-0" + m_decimalSeparator + "99", "");
m_viewModel->OnPaste("1+1=", ViewMode::Standard);
m_viewModel->OnPaste("1+1=");
ValidateViewModelValueAndExpression("2", "");
// This result is not obvious: it's the result of the previous operation
m_viewModel->OnPaste("0=", ViewMode::Standard);
m_viewModel->OnPaste("0=");
ValidateViewModelValueAndExpression("1", "");
// Negative value
m_viewModel->OnPaste("-1", ViewMode::Standard);
m_viewModel->OnPaste("-1");
ValidateViewModelValueAndExpression("-1", "");
// Negated expression
m_viewModel->OnPaste("-(1+1)", ViewMode::Standard);
m_viewModel->OnPaste("-(1+1)");
ValidateViewModelValueAndSecondaryExpression("-2", "negate(1 + 1)");
// More complicated Negated expression
m_viewModel->OnPaste("-(-(-1))", ViewMode::Standard);
m_viewModel->OnPaste("-(-(-1))");
ValidateViewModelValueAndSecondaryExpression("-1", "negate(0 - (0 - 1))");
// Switch to scientific mode
@@ -415,24 +415,24 @@ namespace CalculatorUnitTests
VERIFY_IS_FALSE(m_viewModel->IsFToEChecked);
//// Positive exponent
m_viewModel->OnPaste("1.23e+10", ViewMode::Scientific);
m_viewModel->OnPaste("1.23e+10");
ValidateViewModelValueAndExpression("1" + m_decimalSeparator + "23e+10", "");
m_viewModel->OnPaste("1.23e10", ViewMode::Scientific);
m_viewModel->OnPaste("1.23e10");
ValidateViewModelValueAndExpression("1" + m_decimalSeparator + "23e+10", "");
m_viewModel->OnPaste("135e10", ViewMode::Scientific);
m_viewModel->OnPaste("135e10");
ValidateViewModelValueAndExpression("135" + m_decimalSeparator + "e+10", "");
//// Negative exponent
m_viewModel->OnPaste("1.23e-10", ViewMode::Scientific);
m_viewModel->OnPaste("1.23e-10");
ValidateViewModelValueAndExpression("1" + m_decimalSeparator + "23e-10", "");
//// Uppercase E (for exponent)
m_viewModel->OnPaste("1.23E-10", ViewMode::Scientific);
m_viewModel->OnPaste("1.23E-10");
ValidateViewModelValueAndExpression("1" + m_decimalSeparator + "23e-10", "");
m_viewModel->OnPaste("135E10", ViewMode::Scientific);
m_viewModel->OnPaste("135E10");
ValidateViewModelValueAndExpression("135" + m_decimalSeparator + "e+10", "");
}

View File

@@ -852,69 +852,68 @@ TEST_METHOD(TestOnPaste)
// Call count is being set to 1 because we send 'CE' command as the first call in OnPaste method of the ViewModel
UINT callCount = 1;
ViewMode mode = ViewMode::Volume; // Some temp mode for UnitConverter
// Paste an invalid character - verify that call count doesn't increment
vm.OnPaste("z", mode);
vm.OnPaste("z");
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
// Test all valid characters. Verify that two commands are sent for each character
vm.OnPaste("0", mode);
vm.OnPaste("0");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::Zero == mock->m_lastCommand);
vm.OnPaste("1", mode);
vm.OnPaste("1");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::One == mock->m_lastCommand);
vm.OnPaste("2", mode);
vm.OnPaste("2");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::Two == mock->m_lastCommand);
vm.OnPaste("3", mode);
vm.OnPaste("3");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::Three == mock->m_lastCommand);
vm.OnPaste("4", mode);
vm.OnPaste("4");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::Four == mock->m_lastCommand);
vm.OnPaste("5", mode);
vm.OnPaste("5");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::Five == mock->m_lastCommand);
vm.OnPaste("6", mode);
vm.OnPaste("6");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::Six == mock->m_lastCommand);
vm.OnPaste("7", mode);
vm.OnPaste("7");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::Seven == mock->m_lastCommand);
vm.OnPaste("8", mode);
vm.OnPaste("8");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::Eight == mock->m_lastCommand);
vm.OnPaste("9", mode);
vm.OnPaste("9");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::Nine == mock->m_lastCommand);
vm.OnPaste(".", mode);
vm.OnPaste(".");
callCount += 2;
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
VERIFY_IS_TRUE(UCM::Command::Decimal == mock->m_lastCommand);
vm.OnPaste("-", mode);
vm.OnPaste("-");
// Call count should increment by one (the Clear command) since negate isn't
// sent by itself, only after another legal character
++callCount;
@@ -922,7 +921,7 @@ TEST_METHOD(TestOnPaste)
// Send an invalid character
vm.OnPaste("a", mode);
vm.OnPaste("a");
// Count should remain the same
VERIFY_ARE_EQUAL(callCount, mock->m_sendCommandCallCount);
// Last command should remain the same