diff --git a/src/CalcViewModel/StandardCalculatorViewModel.cpp b/src/CalcViewModel/StandardCalculatorViewModel.cpp index cbd49b6..22554ca 100644 --- a/src/CalcViewModel/StandardCalculatorViewModel.cpp +++ b/src/CalcViewModel/StandardCalculatorViewModel.cpp @@ -137,6 +137,13 @@ StandardCalculatorViewModel::StandardCalculatorViewModel() String ^ StandardCalculatorViewModel::LocalizeDisplayValue(_In_ wstring const& displayValue) { wstring result(displayValue); + + // Adds leading padding 0's to Programmer Mode's Binary Display + if (IsProgrammer && CurrentRadixType == NumberBase::BinBase) + { + result = AddPadding(result); + } + LocalizationSettings::GetInstance()->LocalizeDisplayValue(&result); return ref new Platform::String(result.c_str()); } diff --git a/src/CalculatorUITestFramework/ProgrammerCalculatorPage.cs b/src/CalculatorUITestFramework/ProgrammerCalculatorPage.cs index f0b1a2e..451b663 100644 --- a/src/CalculatorUITestFramework/ProgrammerCalculatorPage.cs +++ b/src/CalculatorUITestFramework/ProgrammerCalculatorPage.cs @@ -7,7 +7,7 @@ namespace CalculatorUITestFramework { /// - /// This class contains the UI automation objects and helper methods available when the Calculator is in Scientific Mode. + /// This class contains the UI automation objects and helper methods available when the Calculator is in Programmer Mode. /// public class ProgrammerCalculatorPage { diff --git a/src/CalculatorUITests/ProgrammerModeFunctionalTests.cs b/src/CalculatorUITests/ProgrammerModeFunctionalTests.cs index 66e7988..5342e1c 100644 --- a/src/CalculatorUITests/ProgrammerModeFunctionalTests.cs +++ b/src/CalculatorUITests/ProgrammerModeFunctionalTests.cs @@ -340,7 +340,7 @@ public void Arithmetic_Operator_Binary_LeftShift() page.ProgrammerOperators.LeftShiftButton.Click(); page.StandardOperators.NumberPad.Input(1); page.StandardOperators.EqualButton.Click(); - Assert.AreEqual("1 0 1 0 0", page.CalculatorResults.GetCalculatorResultText()); + Assert.AreEqual("0 0 0 1 0 1 0 0", page.CalculatorResults.GetCalculatorResultText()); } [TestMethod] @@ -352,7 +352,7 @@ public void Arithmetic_Operator_Binary_RightShift() page.ProgrammerOperators.RightShiftButton.Click(); page.StandardOperators.NumberPad.Input(1); page.StandardOperators.EqualButton.Click(); - Assert.AreEqual("1 0 1", page.CalculatorResults.GetCalculatorResultText()); + Assert.AreEqual("0 1 0 1", page.CalculatorResults.GetCalculatorResultText()); } [TestMethod] @@ -429,7 +429,7 @@ public void Arithmetic_Operator_Binary_Xor() page.ProgrammerOperators.XorButton.Click(); page.StandardOperators.NumberPad.Input(1100); page.StandardOperators.EqualButton.Click(); - Assert.AreEqual("1 1 0", page.CalculatorResults.GetCalculatorResultText()); + Assert.AreEqual("0 1 1 0", page.CalculatorResults.GetCalculatorResultText()); } /// @@ -623,7 +623,7 @@ public void Logical_Operator_Binary_LeftShift() page.ProgrammerOperators.LeftShiftLogicalButton.Click(); page.StandardOperators.NumberPad.Input(1); page.StandardOperators.EqualButton.Click(); - Assert.AreEqual("1 0 1 0 0", page.CalculatorResults.GetCalculatorResultText()); + Assert.AreEqual("0 0 0 1 0 1 0 0", page.CalculatorResults.GetCalculatorResultText()); } [TestMethod] @@ -637,7 +637,7 @@ public void Logical_Operator_Binary_RightShift() page.ProgrammerOperators.RightShiftLogicalButton.Click(); page.StandardOperators.NumberPad.Input(1); page.StandardOperators.EqualButton.Click(); - Assert.IsTrue(String.Equals(page.CalculatorResults.GetCalculatorResultText(), "1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1", StringComparison.OrdinalIgnoreCase)); + Assert.IsTrue(String.Equals(page.CalculatorResults.GetCalculatorResultText(), "0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1", StringComparison.OrdinalIgnoreCase)); } /// @@ -737,7 +737,7 @@ public void Circular_Operator_Binary_LeftShift() page.StandardOperators.NumberPad.Input(1011); page.ProgrammerOperators.RoLButton.Click(); page.StandardOperators.EqualButton.Click(); - Assert.AreEqual("1 0 1 1 0", page.CalculatorResults.GetCalculatorResultText()); + Assert.AreEqual("0 0 0 1 0 1 1 0", page.CalculatorResults.GetCalculatorResultText()); } [TestMethod] @@ -846,7 +846,7 @@ public void ThroughCarry_Operator_Binary_LeftShift() page.StandardOperators.NumberPad.Input(1010); page.ProgrammerOperators.RoLButton.Click(); page.StandardOperators.EqualButton.Click(); - Assert.AreEqual("1 0 1 0 0", page.CalculatorResults.GetCalculatorResultText()); + Assert.AreEqual("0 0 0 1 0 1 0 0", page.CalculatorResults.GetCalculatorResultText()); } [TestMethod] @@ -858,7 +858,7 @@ public void ThroughCarry_Operator_Binary_RightShift() page.StandardOperators.NumberPad.Input(1011); page.ProgrammerOperators.RoRCarryButton.Click(); page.StandardOperators.EqualButton.Click(); - Assert.AreEqual("1 0 1", page.CalculatorResults.GetCalculatorResultText()); + Assert.AreEqual("0 1 0 1", page.CalculatorResults.GetCalculatorResultText()); } ///