blob: 110a34b6037e79abbced89f43e44cae375dafd65 [file] [log] [blame]
// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
/**
* @assertion void checkValueInInterval(int value, int minValue, int maxValue,
* [String name, String message])
* Check that a value lies in a specific interval.
*
* Throws if value is not in the interval. The interval is from minValue
* to maxValue, both inclusive.
* @description Checks that RangeError is thrown if value not in interval. Test
* name and message arguments
* @author sgrekhov@unipro.ru
*/
import "../../../Utils/expect.dart";
check(int value, int min, int max, String? name, String? message) {
try {
RangeError.checkValueInInterval(value, min, max, name, message);
Expect.fail("RangeError expected");
} on RangeError catch (e) {
Expect.equals(min, e.start);
Expect.equals(max, e.end);
Expect.equals(value, e.invalidValue);
Expect.equals(name, e.name);
Expect.equals(message == null ? "Invalid value" : message, e.message);
} catch (e) {
Expect.fail("Wrong exception type $e");
}
}
main() {
check(-1, 2, 5, "name1", "message1");
check(6, 2, 5, null, "message2");
check(-1, -10, -20, "name3", null);
}