diff --git a/tests/mesh/core/number/FractionTests.as b/tests/mesh/core/number/FractionTests.as new file mode 100644 index 0000000..758d06c --- /dev/null +++ b/tests/mesh/core/number/FractionTests.as @@ -0,0 +1,28 @@ +package mesh.core.number +{ + import mesh.core.object.inspect; + + import org.flexunit.assertThat; + import org.hamcrest.object.equalTo; + + public class FractionTests + { + [Test] + public function testGCD():void + { + var tests:Array = [ + {a:1, b:2, expected:1}, + {a:0, b:3, expected:3}, + {a:3, b:0, expected:3}, + {a:108, b:30, expected:6}, + {a:-108, b:30, expected:6}, + {a:108, b:-30, expected:6}, + {a:-108, b:-30, expected:6} + ]; + + for each (var test:Object in tests) { + assertThat("test failed: " + inspect(test), Fraction.gcd(test.a, test.b), equalTo(test.expected)); + } + } + } +} \ No newline at end of file