File tree Expand file tree Collapse file tree 2 files changed +19
-3
lines changed Expand file tree Collapse file tree 2 files changed +19
-3
lines changed Original file line number Diff line number Diff line change @@ -520,12 +520,12 @@ class LIBSCRATCHCPP_EXPORT Value
520520 }
521521 }
522522 } else {
523- if (v1.isNumber () || v2.isNumber ())
523+ if (v1.isString () || v2.isString ())
524+ return stringsEqual (v1.toUtf16 (), v2.toUtf16 ());
525+ else if (v1.isNumber () || v2.isNumber ())
524526 return v1.toDouble () == v2.toDouble ();
525527 else if (v1.isBool () || v2.isBool ())
526528 return ((v1.m_type != Type::NaN && v2.m_type != Type::NaN) && (v1.toBool () == v2.toBool ()));
527- else if (v1.isString () || v2.isString ())
528- return stringsEqual (v1.toUtf16 (), v2.toUtf16 ());
529529 else
530530 return false ;
531531 }
Original file line number Diff line number Diff line change @@ -1775,6 +1775,22 @@ TEST(ValueTest, EqualityOperators)
17751775 ASSERT_TRUE (v2 != v3);
17761776 }
17771777
1778+ {
1779+ Value v1 = 0 ;
1780+ Value v2 = " 0" ;
1781+ Value v3 = " 1" ;
1782+ Value v4 = " test" ;
1783+
1784+ ASSERT_TRUE (v1 == v2);
1785+ ASSERT_FALSE (v1 != v2);
1786+
1787+ ASSERT_FALSE (v1 == v3);
1788+ ASSERT_TRUE (v1 != v3);
1789+
1790+ ASSERT_FALSE (v1 == v4);
1791+ ASSERT_TRUE (v1 != v4);
1792+ }
1793+
17781794 {
17791795 Value v1 = 1 ;
17801796 Value v2 = true ;
You can’t perform that action at this time.
0 commit comments