| // 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 ); |
| } |