2 // System.SingleTest.cs - Unit test for Single
3 // adapted from a subset of DoubleTest.cs
6 // Bob Doan <bdoan@sicompos.com>
7 // Sebastien Pouliot <sebastien@ximian.com>
9 // Copyright (C) 2004-2005 Novell, Inc (http://www.novell.com)
13 using System.Globalization;
14 using NUnit.Framework;
16 namespace MonoTests.System {
19 public class SingleTest : Assertion {
26 Assert ("Equals s1==s2", s1.Equals (s2));
27 Assert ("Equals s1!=NaN", !s1.Equals (Single.NaN));
29 Assert ("Equals NaN=!s2", !Single.NaN.Equals (s2));
30 Assert ("Equals NaN==NaN", Single.NaN.Equals (Single.NaN));
34 Assert ("0.0==-0.0", p0.Equals (m0));
35 Assert ("-0.0==0.0", m0.Equals (p0));
39 public void IsInfinity ()
41 Assert ("PositiveInfinity", Single.IsInfinity (Single.PositiveInfinity));
42 Assert ("NegativeInfinity", Single.IsInfinity (Single.NegativeInfinity));
43 Assert ("12", !Single.IsInfinity(12));
44 Assert ("NaN", !Single.IsInfinity (Single.NaN));
50 Assert ("Nan", Single.IsNaN (Single.NaN));
51 Assert ("12", !Single.IsNaN (12));
52 Assert ("PositiveInfinity", !Single.IsNaN (Single.PositiveInfinity));
53 Assert ("NegativeInfinity", !Single.IsNaN (Single.PositiveInfinity));
57 public void IsNegativeInfinity ()
59 Assert ("IsNegativeInfinity", Single.IsNegativeInfinity (Single.NegativeInfinity));
60 Assert ("12", !Single.IsNegativeInfinity (12));
61 Assert ("NaN", !Single.IsNegativeInfinity (Single.NaN));
65 public void IsPositiveInfinity ()
67 Assert ("PositiveInfinity", Single.IsPositiveInfinity (Single.PositiveInfinity));
68 Assert ("12", !Single.IsPositiveInfinity (12));
69 Assert ("NaN", !Single.IsPositiveInfinity (Single.NaN));
73 public void ToString_Defaults ()
76 // everything defaults to "G"
77 string def = i.ToString ("G");
78 AssertEquals ("ToString()", def, i.ToString ());
79 AssertEquals ("ToString((IFormatProvider)null)", def, i.ToString ((IFormatProvider)null));
80 AssertEquals ("ToString((string)null)", def, i.ToString ((string)null));
81 AssertEquals ("ToString(empty)", def, i.ToString (String.Empty));
82 AssertEquals ("ToString(null,null)", def, i.ToString (null, null));
83 AssertEquals ("ToString(empty,null)", def, i.ToString (String.Empty, null));
85 AssertEquals ("ToString(G)", "254.9", def);
90 [ExpectedException (typeof (ArgumentException))]
91 public void HexNumber_WithHexToParse ()
95 Single.TryParse ("0dead", NumberStyles.HexNumber, null, out f);
99 [ExpectedException (typeof (ArgumentException))]
100 public void HexNumber_NoHexToParse ()
103 Single.TryParse ("0", NumberStyles.HexNumber, null, out f);