@@ -135,7 +135,7 @@ public class Test_RangeSelector : VisualUITestBase
135
135
// Else
136
136
// RangeEnd will be Maximum
137
137
138
- // Input:Sf Min Max Start End Expected:Sf Min Max Start End
138
+ // Input:Sf Min Start End Max Expected:Sf Min Start End Max
139
139
[ DataRow ( 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0.01 , DisplayName = "Minimum == Maximum, Minimum == RangeStart == RangeEnd == Maximum" ) ]
140
140
[ DataRow ( 1 , 0 , 0 , 10 , 0 , 1 , 0 , 0 , 0.01 , 0.01 , DisplayName = "Minimum == Maximum, Minimum == RangeStart < RangeEnd > Maximum" ) ]
141
141
[ DataRow ( 1 , 0 , 0 , - 10 , 0 , 1 , 0 , 0 , 0 , 0.01 , DisplayName = "Minimum == Maximum, Minimum == RangeStart > RangeEnd < Maximum" ) ]
@@ -187,6 +187,81 @@ await App.DispatcherQueue.EnqueueAsync(async () =>
187
187
} ) ;
188
188
}
189
189
190
+ [ TestMethod ]
191
+ [ TestCategory ( "Set Prop" ) ]
192
+ #pragma warning disable SA1008 , SA1025
193
+
194
+ // Input:Sf Min Max Start End TargetProp Target Value Expected:Sf Min Max Start End
195
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Minimum" , 0 , 1 , 0 , 10 , 90 , 100 ) ]
196
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Minimum" , - 10 , 1 , - 10 , 10 , 90 , 100 ) ]
197
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Minimum" , 10 , 1 , 10 , 10 , 90 , 100 ) ]
198
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Minimum" , 50 , 1 , 50 , 50 , 90 , 100 ) ]
199
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Minimum" , 90 , 1 , 90 , 90 , 90 , 100 ) ]
200
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Minimum" , 100 , 1 , 100 , 100 , 100 , 100 ) ]
201
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Minimum" , 110 , 1 , 110 , 110.01 , 110.01 , 110.01 ) ]
202
+
203
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Maximum" , 100 , 1 , 0 , 10 , 90 , 100 ) ]
204
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Maximum" , 110 , 1 , 0 , 10 , 90 , 110 ) ]
205
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Maximum" , 90 , 1 , 0 , 10 , 90 , 90 ) ]
206
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Maximum" , 50 , 1 , 0 , 10 , 50 , 50 ) ]
207
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Maximum" , 10 , 1 , 0 , 10 , 10 , 10 ) ]
208
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Maximum" , 0 , 1 , 0 , 0 , 0 , 0 ) ]
209
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "Maximum" , - 10 , 1 , - 10.01 , - 10 , - 10 , - 10 ) ]
210
+
211
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeStart" , 10 , 1 , 0 , 10 , 90 , 100 ) ]
212
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeStart" , 5 , 1 , 0 , 5 , 90 , 100 ) ]
213
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeStart" , 0 , 1 , 0 , 0 , 90 , 100 ) ]
214
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeStart" , - 10 , 1 , 0 , 0 , 90 , 100 ) ]
215
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeStart" , 90 , 1 , 0 , 90 , 90 , 100 ) ]
216
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeStart" , 95 , 1 , 0 , 95 , 95 , 100 ) ]
217
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeStart" , 100 , 1 , 0 , 100 , 100 , 100 ) ]
218
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeStart" , 110 , 1 , 0 , 100 , 100 , 100 ) ]
219
+
220
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeEnd" , 90 , 1 , 0 , 10 , 90 , 100 ) ]
221
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeEnd" , 95 , 1 , 0 , 10 , 95 , 100 ) ]
222
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeEnd" , 100 , 1 , 0 , 10 , 100 , 100 ) ]
223
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeEnd" , 110 , 1 , 0 , 10 , 100 , 100 ) ]
224
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeEnd" , 10 , 1 , 0 , 10 , 10 , 100 ) ]
225
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeEnd" , 5 , 1 , 0 , 5 , 5 , 100 ) ]
226
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeEnd" , 0 , 1 , 0 , 0 , 0 , 100 ) ]
227
+ [ DataRow ( 1 , 0 , 10 , 90 , 100 , "RangeEnd" , - 10 , 1 , 0 , 0 , 0 , 100 ) ]
228
+ #pragma warning restore SA1025 , SA1008
229
+ public async Task SetProp ( double stepFrequency , double minimum , double rangeStart , double rangeEnd , double maximum , string targetProp , double propInput , double expectedStepFrequency , double expectedMinimum , double expectedRangeStart , double expectedRangeEnd , double expectedMaximum )
230
+ {
231
+ await App . DispatcherQueue . EnqueueAsync ( async ( ) =>
232
+ {
233
+ var inital = new TestRecord ( stepFrequency , minimum , rangeStart , rangeEnd , maximum ) ;
234
+ var r = BuildRangeSelecor ( inital ) ;
235
+
236
+ await SetTestContentAsync ( r ) ;
237
+
238
+ Assert . AreEqual ( inital , BuildTestRecord ( r ) ) ;
239
+
240
+ switch ( targetProp )
241
+ {
242
+ case "Minimum" :
243
+ r . Minimum = propInput ;
244
+ break ;
245
+ case "RangeStart" :
246
+ r . RangeStart = propInput ;
247
+ break ;
248
+ case "RangeEnd" :
249
+ r . RangeEnd = propInput ;
250
+ break ;
251
+ case "Maximum" :
252
+ r . Maximum = propInput ;
253
+ break ;
254
+ default :
255
+ Assert . Fail ( "Invalid param {0}" , targetProp ) ;
256
+ break ;
257
+ }
258
+
259
+ var expected = new TestRecord ( expectedStepFrequency , expectedMinimum , expectedRangeStart , expectedRangeEnd , expectedMaximum ) ;
260
+
261
+ Assert . AreEqual ( expected , BuildTestRecord ( r ) ) ;
262
+ } ) ;
263
+ }
264
+
190
265
public record TestRecord ( double StepFrequency , double Minimum , double RangeStart , double RangeEnd , double Maximum ) ;
191
266
192
267
public static RangeSelector BuildRangeSelecor ( TestRecord input )
0 commit comments