blob: c2860dfd6391c1316e919d79f627cfaff6b748f9 [file] [log] [blame]
// Copyright (c) 2011, 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 double operator %(num other)
/// @description Checks that operator % returns non-negative remainder regardless
/// of the operands signs (chooses positive one from two possible remainder values).
/// Values were calculated in java using operator % and Math.IEEERemainder().
/// @author pagolubev
import "../../../Utils/expect.dart";
main() {
double x = 1.19, y = .2;
Expect.equals( 0.1899999999999999, x % y );
x = -1.19; y = .2;
Expect.equals( 0.01000000000000012, x % y );
x = 1.19; y = -.2;
Expect.equals( 0.1899999999999999, x % y );
x = -1.19; y = -.2;
Expect.equals( 0.01000000000000012, x % y );
x = -1.19; y = 20.0;
Expect.equals(18.81, x % y );
}