@@ -772,17 +772,6 @@ TEST_CLASS(TriggerConditionViewModel_Tests)
772772 Assert::AreEqual (std::wstring (L" " ), condition.GetTooltip (TriggerConditionViewModel::TargetValueProperty));
773773 }
774774
775- TEST_METHOD (TestTooltipValueEnum)
776- {
777- TriggerConditionViewModelHarness condition;
778- condition.mockGameContext .SetNote ({ 0x0099U }, L" Color {02=Red, 06=Brown}" );
779- condition.mockConfiguration .SetFeatureEnabled (ra::services::Feature::PreferDecimal, true );
780- condition.Parse (" 0xH0099=2" );
781-
782- Assert::AreEqual (std::wstring (L" 0x0099\r\n Color {02=Red, 06=Brown}" ), condition.GetTooltip (TriggerConditionViewModel::SourceValueProperty));
783- Assert::AreEqual (std::wstring (L" 02=Red" ), condition.GetTooltip (TriggerConditionViewModel::TargetValueProperty));
784- }
785-
786775 TEST_METHOD (TestTooltipValueHex)
787776 {
788777 TriggerConditionViewModelHarness condition;
@@ -795,6 +784,54 @@ TEST_CLASS(TriggerConditionViewModel_Tests)
795784 Assert::AreEqual (std::wstring (L" 99" ), condition.GetTooltip (TriggerConditionViewModel::TargetValueProperty));
796785 }
797786
787+ TEST_METHOD (TestTooltipValueEnumPreferDecimal)
788+ {
789+ TriggerConditionViewModelHarness condition;
790+ condition.mockGameContext .SetNote ({ 0x0099U }, L" Color {20=Red, 24=Brown}" );
791+ condition.mockConfiguration .SetFeatureEnabled (ra::services::Feature::PreferDecimal, true );
792+ condition.Parse (" 0xH0099=20" );
793+
794+ Assert::AreEqual (std::wstring (L" 20" ), condition.GetTargetValue ());
795+ Assert::AreEqual (std::wstring (L" 0x0099\r\n Color {20=Red, 24=Brown}" ), condition.GetTooltip (TriggerConditionViewModel::SourceValueProperty));
796+ Assert::AreEqual (std::wstring (L" 20=Red" ), condition.GetTooltip (TriggerConditionViewModel::TargetValueProperty));
797+ }
798+
799+ TEST_METHOD (TestTooltipValueEnumPreferHex)
800+ {
801+ TriggerConditionViewModelHarness condition;
802+ condition.mockGameContext .SetNote ({ 0x0099U }, L" Color {20=Red, 24=Brown}" );
803+ condition.mockConfiguration .SetFeatureEnabled (ra::services::Feature::PreferDecimal, false );
804+ condition.Parse (" 0xH0099=20" );
805+
806+ Assert::AreEqual (std::wstring (L" 0x14" ), condition.GetTargetValue ());
807+ Assert::AreEqual (std::wstring (L" 0x0099\r\n Color {20=Red, 24=Brown}" ), condition.GetTooltip (TriggerConditionViewModel::SourceValueProperty));
808+ Assert::AreEqual (std::wstring (L" 20=Red" ), condition.GetTooltip (TriggerConditionViewModel::TargetValueProperty));
809+ }
810+
811+ TEST_METHOD (TestTooltipValueEnumPreferDecimalHexNote)
812+ {
813+ TriggerConditionViewModelHarness condition;
814+ condition.mockGameContext .SetNote ({ 0x0099U }, L" Color {0x14=Red, 0x18=Brown}" );
815+ condition.mockConfiguration .SetFeatureEnabled (ra::services::Feature::PreferDecimal, true );
816+ condition.Parse (" 0xH0099=20" );
817+
818+ Assert::AreEqual (std::wstring (L" 20" ), condition.GetTargetValue ());
819+ Assert::AreEqual (std::wstring (L" 0x0099\r\n Color {0x14=Red, 0x18=Brown}" ), condition.GetTooltip (TriggerConditionViewModel::SourceValueProperty));
820+ Assert::AreEqual (std::wstring (L" 0x14=Red" ), condition.GetTooltip (TriggerConditionViewModel::TargetValueProperty));
821+ }
822+
823+ TEST_METHOD (TestTooltipValueEnumPreferHexHexNote)
824+ {
825+ TriggerConditionViewModelHarness condition;
826+ condition.mockGameContext .SetNote ({ 0x0099U }, L" Color {0x14=Red, 0x18=Brown}" );
827+ condition.mockConfiguration .SetFeatureEnabled (ra::services::Feature::PreferDecimal, false );
828+ condition.Parse (" 0xH0099=20" );
829+
830+ Assert::AreEqual (std::wstring (L" 0x14" ), condition.GetTargetValue ());
831+ Assert::AreEqual (std::wstring (L" 0x0099\r\n Color {0x14=Red, 0x18=Brown}" ), condition.GetTooltip (TriggerConditionViewModel::SourceValueProperty));
832+ Assert::AreEqual (std::wstring (L" 0x14=Red" ), condition.GetTooltip (TriggerConditionViewModel::TargetValueProperty));
833+ }
834+
798835private:
799836 class IndirectAddressTriggerViewModelHarness : public TriggerViewModel
800837 {
0 commit comments