Skip to content

Commit c4dd76e

Browse files
committed
feat: Add unittests to ensure opEquals is honored when asserting equality
1 parent 3f92f66 commit c4dd76e

File tree

2 files changed

+7
-0
lines changed
  • source/fluentasserts

2 files changed

+7
-0
lines changed

source/fluentasserts/core/evaluation/eval.d

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -583,6 +583,7 @@ unittest {
583583
assert(result.evaluation.gcMemoryUsed == 0);
584584
}
585585

586+
// Issue #98: opEquals should be honored when asserting equality
586587
@("evaluateObject sets proxyValue with object reference for opEquals comparison")
587588
unittest {
588589
Lifecycle.instance.disableFailureHandling = false;

source/fluentasserts/operations/equality/equal.d

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -709,6 +709,7 @@ unittest {
709709
assert(evaluation.result.negated == true, "expected negated to be true");
710710
}
711711

712+
// Issue #98: opEquals should be honored when asserting equality
712713
@("objects with custom opEquals compares two exact values")
713714
unittest {
714715
auto testValue = new EqualThing(1);
@@ -720,6 +721,7 @@ unittest {
720721
assert(evaluation.result.expected.length == 0, "equal operation should pass for same object reference");
721722
}
722723

724+
// Issue #98: opEquals should be honored when asserting equality
723725
@("objects with custom opEquals compares two objects with same fields")
724726
unittest {
725727
auto testValue = new EqualThing(1);
@@ -732,6 +734,7 @@ unittest {
732734
assert(evaluation.result.expected.length == 0, "equal operation should pass for objects with same fields");
733735
}
734736

737+
// Issue #98: opEquals should be honored when asserting equality
735738
@("objects with custom opEquals compares object cast to Object with same fields")
736739
unittest {
737740
auto testValue = new EqualThing(1);
@@ -744,6 +747,7 @@ unittest {
744747
assert(evaluation.result.expected.length == 0, "equal operation should pass for objects with same fields cast to Object");
745748
}
746749

750+
// Issue #98: opEquals should be honored when asserting equality
747751
@("objects with custom opEquals checks if two values are not equal")
748752
unittest {
749753
auto testValue = new EqualThing(1);
@@ -987,6 +991,7 @@ class Thing {
987991
}
988992
}
989993

994+
// Issue #98: opEquals should be honored when asserting equality
990995
@("opEquals honored for class objects with same field value")
991996
unittest {
992997
auto a1 = new Thing(1);
@@ -1001,6 +1006,7 @@ unittest {
10011006
assert(evaluation.result.expected.length == 0, "opEquals should return true for objects with same x value, but got expected: " ~ evaluation.result.expected[]);
10021007
}
10031008

1009+
// Issue #98: opEquals should be honored when asserting equality
10041010
@("opEquals honored for class objects with different field values")
10051011
unittest {
10061012
auto a1 = new Thing(1);

0 commit comments

Comments
 (0)