Fix MathContract<decimal>.Exp().
authorJonathan Pryor <jonpryor@vt.edu>
Mon, 14 Jun 2010 16:02:04 +0000 (12:02 -0400)
committerJonathan Pryor <jonpryor@vt.edu>
Mon, 14 Jun 2010 16:02:04 +0000 (12:02 -0400)
commitfef1efc7b2057d70863ff244eba05727e0c6d825
treead310a65bbacf8c40a71371686bbaf9a58029291
parent1e4cfcfb752ece287decf89f555522faa24a6adf
Fix MathContract<decimal>.Exp().

double->decimal conversion can be "lossy"; consequently, this was failing
under .NET (but not mono).

Assert.AreEqual (m.E, m.Exp (m.FromInt32 (1)));

Apparently the 'double->decimal' conversion operator doesn't invoke the
decimal(double) constructor under .NET; it does under Mono.  Whew knew?

Changing DecimalMath to use the decimal(double) constructor instead of the
(decimal) cast operator allows the tests to pass under .NET.
src/Cadenza/Cadenza.Numerics/Math.cs