#!/usr/bin/ruby
#
## Tests for the modulo operator
#
var m = 5;
var x = (100! + m);
var y = 23;
assert_eq( x % y, m);
assert_eq(-x % -y, -m);
assert_eq( x % -y, m - y);
assert_eq(-x % y, y - m);
var f1 = 399.8;
var f2 = 41.2;
assert_eq( f1 % f2 -> roundf( 0), 29);
assert_eq(-f1 % -f2 -> roundf( 0), -29);
assert_eq( f1 % -f2 -> roundf(-1), -12.2);
assert_eq(-f1 % f2 -> roundf(-1), 12.2);
say "** Test passed!";