diff options
author | David Miller <dmiller2718@gmail.com> | 2009-10-16 22:32:06 -0500 |
---|---|---|
committer | David Miller <dmiller2718@gmail.com> | 2009-10-16 22:32:06 -0500 |
commit | b9c7820e64d4e5b86c837b25800cf61094ad2517 (patch) | |
tree | 3331479011111c5cd3f58d975e5bdf780cff9d2d /ClojureCLR/Clojure/Clojure.Tests/LibTests/NumbersTests.cs | |
parent | 0ef485fc1e2c80d6d531b5f8874f051e0f4c7d0a (diff) |
Removing ClojureCLR (Moved to http://github.com/richhickey/clojure-clr)
Diffstat (limited to 'ClojureCLR/Clojure/Clojure.Tests/LibTests/NumbersTests.cs')
-rw-r--r-- | ClojureCLR/Clojure/Clojure.Tests/LibTests/NumbersTests.cs | 137 |
1 files changed, 0 insertions, 137 deletions
diff --git a/ClojureCLR/Clojure/Clojure.Tests/LibTests/NumbersTests.cs b/ClojureCLR/Clojure/Clojure.Tests/LibTests/NumbersTests.cs deleted file mode 100644 index 9d229568..00000000 --- a/ClojureCLR/Clojure/Clojure.Tests/LibTests/NumbersTests.cs +++ /dev/null @@ -1,137 +0,0 @@ -/**
- * Copyright (c) David Miller. All rights reserved.
- * The use and distribution terms for this software are covered by the
- * Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)
- * which can be found in the file epl-v10.html at the root of this distribution.
- * By using this software in any fashion, you are agreeing to be bound by
- * the terms of this license.
- * You must not remove this notice, or any other, from this software.
- **/
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-using NUnit.Framework;
-using Rhino.Mocks;
-
-using clojure.lang;
-using java.math;
-
-namespace Clojure.Tests.LibTests
-{
- [TestFixture]
- public class NumbersTests : AssertionHelper
- {
- #region Helpers
-
- private void ExpectInt32(object x)
- {
- Expect(x, TypeOf(typeof(Int32)));
- }
-
- private void ExpectSameObject(object x, object y)
- {
- Expect(x, SameAs(y));
- }
-
- private void ExpectEqualObject(object x, object y)
- {
- Expect(x, EqualTo(y));
- }
-
- #endregion
-
- #region reduce tests
-
- [Test]
- public void ReduceOnBigIntReducesSmallerValues()
- {
- BigInteger b1 = new BigInteger("123");
- BigInteger b2 = new BigInteger("0");
- BigInteger b3 = new BigInteger(Int32.MaxValue.ToString());
- BigInteger b4 = new BigInteger(Int32.MinValue.ToString());
-
- ExpectInt32(Numbers.reduce(b1));
- ExpectInt32(Numbers.reduce(b2));
- ExpectInt32(Numbers.reduce(b3));
- ExpectInt32(Numbers.reduce(b4));
- }
-
- [Test]
- public void ReduceOnBigIntReturnsLargerValues()
- {
- BigInteger b1 = new BigInteger("100000000000000000000", 16);
- BigInteger b2 = b1.negate();
- BigInteger b3 = new BigInteger("123456789012345678901234567890");
- BigInteger b4 = b3.negate();
-
- ExpectSameObject(b1, Numbers.reduce(b1));
- ExpectSameObject(b2, Numbers.reduce(b2));
- ExpectSameObject(b3, Numbers.reduce(b3));
- ExpectSameObject(b4, Numbers.reduce(b4));
- }
-
- [Test]
- public void ReduceOnLongReducesSmallerValues()
- {
- long b1 = 123;
- long b2 = 0;
- long b3 = Int32.MaxValue;
- long b4 = Int32.MinValue;
-
- ExpectInt32(Numbers.reduce(b1));
- ExpectInt32(Numbers.reduce(b2));
- ExpectInt32(Numbers.reduce(b3));
- ExpectInt32(Numbers.reduce(b4));
- }
-
-
- [Test]
- public void ReduceOnLongReturnsLargerValues()
- {
- long b1 = ((long)Int32.MaxValue) + 1;
- long b2 = ((long)Int32.MinValue) - 1;
- long b3 = 123456789000;
- long b4 = -b3;
-
- ExpectEqualObject(b1, Numbers.reduce(b1));
- ExpectEqualObject(b2, Numbers.reduce(b2));
- ExpectEqualObject(b3, Numbers.reduce(b3));
- ExpectEqualObject(b4, Numbers.reduce(b4));
- }
-
- #endregion
-
- #region divide tests
-
- [Test]
- [ExpectedException(typeof(ArithmeticException))]
- public void DivideByZeroFails()
- {
- object o = Numbers.BIDivide(Numbers.BigIntegerOne, Numbers.BigIntegerZero);
- }
-
- [Test]
- public void DivideReducesToIntOnDenomOne()
- {
- object o = Numbers.BIDivide(new BigInteger("75"), new BigInteger("25"));
- Expect(o, EqualTo(3));
- }
-
- [Test]
- public void DivideReturnsReducedRatio()
- {
- object o = Numbers.BIDivide(new BigInteger("42"), new BigInteger("30"));
-
- Expect(o, TypeOf(typeof(Ratio)));
-
- Ratio r = o as Ratio;
- Expect(r.numerator, EqualTo(new BigInteger("7")));
- Expect(r.denominator, EqualTo(new BigInteger("5")));
- }
-
- #endregion
- }
-}
|