Skip to content

Commit c2db65a

Browse files
committed
relax nan tests
1 parent e727703 commit c2db65a

File tree

3 files changed

+30
-30
lines changed

3 files changed

+30
-30
lines changed

libm/src/math/fmin_fmax.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,6 @@ mod tests {
140140
(F::NEG_NAN, F::NEG_ONE, F::NEG_ONE),
141141
(F::NEG_NAN, F::INFINITY, F::INFINITY),
142142
(F::NEG_NAN, F::NEG_INFINITY, F::NEG_INFINITY),
143-
(F::NEG_NAN, F::NEG_NAN, F::NEG_NAN),
144143
];
145144

146145
for (x, y, res) in cases {
@@ -153,6 +152,7 @@ mod tests {
153152
assert_eq!(f(F::NEG_ZERO, F::ZERO), F::ZERO);
154153
assert!(f(F::NAN, F::NEG_NAN).is_nan());
155154
assert!(f(F::NEG_NAN, F::NAN).is_nan());
155+
assert!(f(F::NEG_NAN, F::NEG_NAN).is_nan());
156156
}
157157

158158
#[test]
@@ -238,7 +238,6 @@ mod tests {
238238
(F::NEG_NAN, F::NEG_ONE, F::NEG_ONE),
239239
(F::NEG_NAN, F::INFINITY, F::INFINITY),
240240
(F::NEG_NAN, F::NEG_INFINITY, F::NEG_INFINITY),
241-
(F::NEG_NAN, F::NEG_NAN, F::NEG_NAN),
242241
];
243242

244243
for (x, y, res) in cases {
@@ -251,6 +250,7 @@ mod tests {
251250
assert_eq!(f(F::NEG_ZERO, F::ZERO), F::ZERO);
252251
assert!(f(F::NAN, F::NEG_NAN).is_nan());
253252
assert!(f(F::NEG_NAN, F::NAN).is_nan());
253+
assert!(f(F::NEG_NAN, F::NEG_NAN).is_nan());
254254
}
255255

256256
#[test]

libm/src/math/fminimum_fmaximum.rs

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -80,61 +80,48 @@ mod tests {
8080
(F::ZERO, F::INFINITY, F::ZERO),
8181
(F::ZERO, F::NEG_INFINITY, F::NEG_INFINITY),
8282
(F::ZERO, F::NAN, F::NAN),
83-
(F::ZERO, F::NEG_NAN, F::NEG_NAN),
8483
(F::NEG_ZERO, F::ZERO, F::NEG_ZERO),
8584
(F::NEG_ZERO, F::NEG_ZERO, F::NEG_ZERO),
8685
(F::NEG_ZERO, F::ONE, F::NEG_ZERO),
8786
(F::NEG_ZERO, F::NEG_ONE, F::NEG_ONE),
8887
(F::NEG_ZERO, F::INFINITY, F::NEG_ZERO),
8988
(F::NEG_ZERO, F::NEG_INFINITY, F::NEG_INFINITY),
9089
(F::NEG_ZERO, F::NAN, F::NAN),
91-
(F::NEG_ZERO, F::NEG_NAN, F::NEG_NAN),
9290
(F::ONE, F::ZERO, F::ZERO),
9391
(F::ONE, F::NEG_ZERO, F::NEG_ZERO),
9492
(F::ONE, F::ONE, F::ONE),
9593
(F::ONE, F::NEG_ONE, F::NEG_ONE),
9694
(F::ONE, F::INFINITY, F::ONE),
9795
(F::ONE, F::NEG_INFINITY, F::NEG_INFINITY),
9896
(F::ONE, F::NAN, F::NAN),
99-
(F::ONE, F::NEG_NAN, F::NEG_NAN),
10097
(F::NEG_ONE, F::ZERO, F::NEG_ONE),
10198
(F::NEG_ONE, F::NEG_ZERO, F::NEG_ONE),
10299
(F::NEG_ONE, F::ONE, F::NEG_ONE),
103100
(F::NEG_ONE, F::NEG_ONE, F::NEG_ONE),
104101
(F::NEG_ONE, F::INFINITY, F::NEG_ONE),
105102
(F::NEG_ONE, F::NEG_INFINITY, F::NEG_INFINITY),
106103
(F::NEG_ONE, F::NAN, F::NAN),
107-
(F::NEG_ONE, F::NEG_NAN, F::NEG_NAN),
108104
(F::INFINITY, F::ZERO, F::ZERO),
109105
(F::INFINITY, F::NEG_ZERO, F::NEG_ZERO),
110106
(F::INFINITY, F::ONE, F::ONE),
111107
(F::INFINITY, F::NEG_ONE, F::NEG_ONE),
112108
(F::INFINITY, F::INFINITY, F::INFINITY),
113109
(F::INFINITY, F::NEG_INFINITY, F::NEG_INFINITY),
114110
(F::INFINITY, F::NAN, F::NAN),
115-
(F::INFINITY, F::NEG_NAN, F::NEG_NAN),
116111
(F::NEG_INFINITY, F::ZERO, F::NEG_INFINITY),
117112
(F::NEG_INFINITY, F::NEG_ZERO, F::NEG_INFINITY),
118113
(F::NEG_INFINITY, F::ONE, F::NEG_INFINITY),
119114
(F::NEG_INFINITY, F::NEG_ONE, F::NEG_INFINITY),
120115
(F::NEG_INFINITY, F::INFINITY, F::NEG_INFINITY),
121116
(F::NEG_INFINITY, F::NEG_INFINITY, F::NEG_INFINITY),
122117
(F::NEG_INFINITY, F::NAN, F::NAN),
123-
(F::NEG_INFINITY, F::NEG_NAN, F::NEG_NAN),
124118
(F::NAN, F::ZERO, F::NAN),
125119
(F::NAN, F::NEG_ZERO, F::NAN),
126120
(F::NAN, F::ONE, F::NAN),
127121
(F::NAN, F::NEG_ONE, F::NAN),
128122
(F::NAN, F::INFINITY, F::NAN),
129123
(F::NAN, F::NEG_INFINITY, F::NAN),
130124
(F::NAN, F::NAN, F::NAN),
131-
(F::NEG_NAN, F::ZERO, F::NEG_NAN),
132-
(F::NEG_NAN, F::NEG_ZERO, F::NEG_NAN),
133-
(F::NEG_NAN, F::ONE, F::NEG_NAN),
134-
(F::NEG_NAN, F::NEG_ONE, F::NEG_NAN),
135-
(F::NEG_NAN, F::INFINITY, F::NEG_NAN),
136-
(F::NEG_NAN, F::NEG_INFINITY, F::NEG_NAN),
137-
(F::NEG_NAN, F::NEG_NAN, F::NEG_NAN),
138125
];
139126

140127
for (x, y, res) in cases {
@@ -145,6 +132,19 @@ mod tests {
145132
// Ordering between NaNs does not matter
146133
assert!(f(F::NAN, F::NEG_NAN).is_nan());
147134
assert!(f(F::NEG_NAN, F::NAN).is_nan());
135+
assert!(f(F::ZERO, F::NEG_NAN).is_nan());
136+
assert!(f(F::NEG_ZERO, F::NEG_NAN).is_nan());
137+
assert!(f(F::ONE, F::NEG_NAN).is_nan());
138+
assert!(f(F::NEG_ONE, F::NEG_NAN).is_nan());
139+
assert!(f(F::INFINITY, F::NEG_NAN).is_nan());
140+
assert!(f(F::NEG_INFINITY, F::NEG_NAN).is_nan());
141+
assert!(f(F::NEG_NAN, F::ZERO).is_nan());
142+
assert!(f(F::NEG_NAN, F::NEG_ZERO).is_nan());
143+
assert!(f(F::NEG_NAN, F::ONE).is_nan());
144+
assert!(f(F::NEG_NAN, F::NEG_ONE).is_nan());
145+
assert!(f(F::NEG_NAN, F::INFINITY).is_nan());
146+
assert!(f(F::NEG_NAN, F::NEG_INFINITY).is_nan());
147+
assert!(f(F::NEG_NAN, F::NEG_NAN).is_nan());
148148
}
149149

150150
#[test]
@@ -178,61 +178,48 @@ mod tests {
178178
(F::ZERO, F::INFINITY, F::INFINITY),
179179
(F::ZERO, F::NEG_INFINITY, F::ZERO),
180180
(F::ZERO, F::NAN, F::NAN),
181-
(F::ZERO, F::NEG_NAN, F::NEG_NAN),
182181
(F::NEG_ZERO, F::ZERO, F::ZERO),
183182
(F::NEG_ZERO, F::NEG_ZERO, F::NEG_ZERO),
184183
(F::NEG_ZERO, F::ONE, F::ONE),
185184
(F::NEG_ZERO, F::NEG_ONE, F::NEG_ZERO),
186185
(F::NEG_ZERO, F::INFINITY, F::INFINITY),
187186
(F::NEG_ZERO, F::NEG_INFINITY, F::NEG_ZERO),
188187
(F::NEG_ZERO, F::NAN, F::NAN),
189-
(F::NEG_ZERO, F::NEG_NAN, F::NEG_NAN),
190188
(F::ONE, F::ZERO, F::ONE),
191189
(F::ONE, F::NEG_ZERO, F::ONE),
192190
(F::ONE, F::ONE, F::ONE),
193191
(F::ONE, F::NEG_ONE, F::ONE),
194192
(F::ONE, F::INFINITY, F::INFINITY),
195193
(F::ONE, F::NEG_INFINITY, F::ONE),
196194
(F::ONE, F::NAN, F::NAN),
197-
(F::ONE, F::NEG_NAN, F::NEG_NAN),
198195
(F::NEG_ONE, F::ZERO, F::ZERO),
199196
(F::NEG_ONE, F::NEG_ZERO, F::NEG_ZERO),
200197
(F::NEG_ONE, F::ONE, F::ONE),
201198
(F::NEG_ONE, F::NEG_ONE, F::NEG_ONE),
202199
(F::NEG_ONE, F::INFINITY, F::INFINITY),
203200
(F::NEG_ONE, F::NEG_INFINITY, F::NEG_ONE),
204201
(F::NEG_ONE, F::NAN, F::NAN),
205-
(F::NEG_ONE, F::NEG_NAN, F::NEG_NAN),
206202
(F::INFINITY, F::ZERO, F::INFINITY),
207203
(F::INFINITY, F::NEG_ZERO, F::INFINITY),
208204
(F::INFINITY, F::ONE, F::INFINITY),
209205
(F::INFINITY, F::NEG_ONE, F::INFINITY),
210206
(F::INFINITY, F::INFINITY, F::INFINITY),
211207
(F::INFINITY, F::NEG_INFINITY, F::INFINITY),
212208
(F::INFINITY, F::NAN, F::NAN),
213-
(F::INFINITY, F::NEG_NAN, F::NEG_NAN),
214209
(F::NEG_INFINITY, F::ZERO, F::ZERO),
215210
(F::NEG_INFINITY, F::NEG_ZERO, F::NEG_ZERO),
216211
(F::NEG_INFINITY, F::ONE, F::ONE),
217212
(F::NEG_INFINITY, F::NEG_ONE, F::NEG_ONE),
218213
(F::NEG_INFINITY, F::INFINITY, F::INFINITY),
219214
(F::NEG_INFINITY, F::NEG_INFINITY, F::NEG_INFINITY),
220215
(F::NEG_INFINITY, F::NAN, F::NAN),
221-
(F::NEG_INFINITY, F::NEG_NAN, F::NEG_NAN),
222216
(F::NAN, F::ZERO, F::NAN),
223217
(F::NAN, F::NEG_ZERO, F::NAN),
224218
(F::NAN, F::ONE, F::NAN),
225219
(F::NAN, F::NEG_ONE, F::NAN),
226220
(F::NAN, F::INFINITY, F::NAN),
227221
(F::NAN, F::NEG_INFINITY, F::NAN),
228222
(F::NAN, F::NAN, F::NAN),
229-
(F::NEG_NAN, F::ZERO, F::NEG_NAN),
230-
(F::NEG_NAN, F::NEG_ZERO, F::NEG_NAN),
231-
(F::NEG_NAN, F::ONE, F::NEG_NAN),
232-
(F::NEG_NAN, F::NEG_ONE, F::NEG_NAN),
233-
(F::NEG_NAN, F::INFINITY, F::NEG_NAN),
234-
(F::NEG_NAN, F::NEG_INFINITY, F::NEG_NAN),
235-
(F::NEG_NAN, F::NEG_NAN, F::NEG_NAN),
236223
];
237224

238225
for (x, y, res) in cases {
@@ -243,6 +230,19 @@ mod tests {
243230
// Ordering between NaNs does not matter
244231
assert!(f(F::NAN, F::NEG_NAN).is_nan());
245232
assert!(f(F::NEG_NAN, F::NAN).is_nan());
233+
assert!(f(F::ZERO, F::NEG_NAN).is_nan());
234+
assert!(f(F::NEG_ZERO, F::NEG_NAN).is_nan());
235+
assert!(f(F::ONE, F::NEG_NAN).is_nan());
236+
assert!(f(F::NEG_ONE, F::NEG_NAN).is_nan());
237+
assert!(f(F::INFINITY, F::NEG_NAN).is_nan());
238+
assert!(f(F::NEG_INFINITY, F::NEG_NAN).is_nan());
239+
assert!(f(F::NEG_NAN, F::ZERO).is_nan());
240+
assert!(f(F::NEG_NAN, F::NEG_ZERO).is_nan());
241+
assert!(f(F::NEG_NAN, F::ONE).is_nan());
242+
assert!(f(F::NEG_NAN, F::NEG_ONE).is_nan());
243+
assert!(f(F::NEG_NAN, F::INFINITY).is_nan());
244+
assert!(f(F::NEG_NAN, F::NEG_INFINITY).is_nan());
245+
assert!(f(F::NEG_NAN, F::NEG_NAN).is_nan());
246246
}
247247

248248
#[test]

libm/src/math/fminimum_fmaximum_num.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,6 @@ mod tests {
134134
(F::NEG_NAN, F::NEG_ONE, F::NEG_ONE),
135135
(F::NEG_NAN, F::INFINITY, F::INFINITY),
136136
(F::NEG_NAN, F::NEG_INFINITY, F::NEG_INFINITY),
137-
(F::NEG_NAN, F::NEG_NAN, F::NEG_NAN),
138137
];
139138

140139
for (x, y, expected) in cases {
@@ -145,6 +144,7 @@ mod tests {
145144
// Ordering between NaNs does not matter
146145
assert!(f(F::NAN, F::NEG_NAN).is_nan());
147146
assert!(f(F::NEG_NAN, F::NAN).is_nan());
147+
assert!(f(F::NEG_NAN, F::NEG_NAN).is_nan());
148148
}
149149

150150
#[test]
@@ -232,7 +232,6 @@ mod tests {
232232
(F::NEG_NAN, F::NEG_ONE, F::NEG_ONE),
233233
(F::NEG_NAN, F::INFINITY, F::INFINITY),
234234
(F::NEG_NAN, F::NEG_INFINITY, F::NEG_INFINITY),
235-
(F::NEG_NAN, F::NEG_NAN, F::NEG_NAN),
236235
];
237236

238237
for (x, y, expected) in cases {
@@ -243,6 +242,7 @@ mod tests {
243242
// Ordering between NaNs does not matter
244243
assert!(f(F::NAN, F::NEG_NAN).is_nan());
245244
assert!(f(F::NEG_NAN, F::NAN).is_nan());
245+
assert!(f(F::NEG_NAN, F::NEG_NAN).is_nan());
246246
}
247247

248248
#[test]

0 commit comments

Comments
 (0)