|
1 | 1 | using System; |
2 | 2 | using System.Collections.Generic; |
| 3 | +using System.Diagnostics.CodeAnalysis; |
3 | 4 | using Xunit; |
4 | 5 |
|
5 | 6 | namespace DevExtreme.AspNet.Data.Tests { |
@@ -30,6 +31,18 @@ public void WithOperator() { |
30 | 31 | ); |
31 | 32 | } |
32 | 33 |
|
| 34 | + [Fact] |
| 35 | + public void WrongOperator() { |
| 36 | + TestFilter( |
| 37 | + new[] { |
| 38 | + new DataItemWrongOperator { Value = 1 }, |
| 39 | + new DataItemWrongOperator { Value = 2 } |
| 40 | + }, |
| 41 | + "=", new DataItemWrongOperator { Value = 1 }, |
| 42 | + ".Where(obj => Equals(obj, {1}))" |
| 43 | + ); |
| 44 | + } |
| 45 | + |
33 | 46 | [Fact] |
34 | 47 | public void Struct() { |
35 | 48 | TestFilter( |
@@ -82,6 +95,22 @@ public override string ToString() |
82 | 95 | => "{" + Value + "}"; |
83 | 96 | } |
84 | 97 |
|
| 98 | + class DataItemWrongOperator { |
| 99 | + public int Value; |
| 100 | + [SuppressMessage("Style", "IDE0060")] |
| 101 | + public static DataItemWrongOperator operator ==(DataItemWrongOperator l, DataItemWrongOperator r) |
| 102 | + => null; |
| 103 | + [SuppressMessage("Style", "IDE0060")] |
| 104 | + public static DataItemWrongOperator operator !=(DataItemWrongOperator l, DataItemWrongOperator r) |
| 105 | + => null; |
| 106 | + public override bool Equals(object obj) |
| 107 | + => Value == (obj as DataItemWrongOperator).Value; |
| 108 | + public override int GetHashCode() |
| 109 | + => Value.GetHashCode(); |
| 110 | + public override string ToString() |
| 111 | + => "{" + Value + "}"; |
| 112 | + } |
| 113 | + |
85 | 114 | struct DataItemStruct { |
86 | 115 | public int Value; |
87 | 116 | public override bool Equals(object obj) |
|
0 commit comments