{
Assert("MyInt32_3.CompareTo(MyInt32_2) > 0", MyInt32_3.CompareTo(MyInt32_2) > 0);
Assert("MyInt32_2.CompareTo(MyInt32_2) == 0", MyInt32_2.CompareTo(MyInt32_2) == 0);
- Assert("MyInt32_1.CompareTo((Int32)(-42)) == 0", MyInt32_1.CompareTo((Int32)(-42)) == 0);
+ Assert("MyInt32_1.CompareTo((Int32)(-42)) == 0", MyInt32_1.CompareTo((object)(Int32)(-42)) == 0);
Assert("MyInt32_2.CompareTo(MyInt32_3) < 0", MyInt32_2.CompareTo(MyInt32_3) < 0);
try {
- MyInt32_2.CompareTo((Int16)100);
+ MyInt32_2.CompareTo((object)(Int16)100);
Fail("Should raise a System.ArgumentException");
}
catch (Exception e) {
{
Assert ("#B01", MyInt32_1.Equals (MyInt32_1));
Assert ("#B02", MyInt32_1.Equals ((Int32)(-42)));
- Assert ("#B03", MyInt32_1.Equals ((SByte)(-42)) == false);
+ Assert ("#B03", MyInt32_1.Equals ((object)(SByte)(-42)) == false);
Assert ("#B04", MyInt32_1.Equals (MyInt32_2) == false);
}
} catch (Exception e){
Assert ("#C34", typeof (OverflowException) == e.GetType ());
}
+ try {
+ Int32.Parse ("2147483648");
+ Fail ("C#35: should raise OverflowException");
+ } catch (Exception e) {
+ Assert ("C#36", typeof (OverflowException) == e.GetType ());
+ }
+ try {
+ Int32.Parse ("2147483648", CultureInfo.InvariantCulture);
+ Fail ("C#37: should raise OverflowException");
+ } catch (Exception e) {
+ Assert ("C#38", typeof (OverflowException) == e.GetType ());
+ }
+ }
+
+#if NET_2_0
+ public void TestTryParse()
+ {
+ int result;
+
+ AssertEquals (true, Int32.TryParse (MyString1, out result));
+ AssertEquals (MyInt32_1, result);
+ AssertEquals (true, Int32.TryParse (MyString2, out result));
+ AssertEquals (MyInt32_2, result);
+ AssertEquals (true, Int32.TryParse (MyString3, out result));
+ AssertEquals (MyInt32_3, result);
+
+ AssertEquals (true, Int32.TryParse ("1", out result));
+ AssertEquals (1, result);
+ AssertEquals (true, Int32.TryParse (" 1", out result));
+ AssertEquals (1, result);
+ AssertEquals (true, Int32.TryParse (" 1", out result));
+ AssertEquals (1, result);
+ AssertEquals (true, Int32.TryParse ("1 ", out result));
+ AssertEquals (1, result);
+ AssertEquals (true, Int32.TryParse ("+1", out result));
+ AssertEquals (1, result);
+ AssertEquals (true, Int32.TryParse ("-1", out result));
+ AssertEquals (-1, result);
+ AssertEquals (true, Int32.TryParse (" -1", out result));
+ AssertEquals (-1, result);
+ AssertEquals (true, Int32.TryParse (" -1 ", out result));
+ AssertEquals (-1, result);
+ AssertEquals (true, Int32.TryParse (" -1 ", out result));
+ AssertEquals (-1, result);
+
+ result = 1;
+ AssertEquals (false, Int32.TryParse (null, out result));
+ AssertEquals (0, result);
+
+ AssertEquals (false, Int32.TryParse ("not-a-number", out result));
+
+ double OverInt = (double)Int32.MaxValue + 1;
+ AssertEquals (false, Int32.TryParse (OverInt.ToString (), out result));
+
+ AssertEquals (false, Int32.TryParse ("$42", NumberStyles.Integer, null, out result));
+ AssertEquals (false, Int32.TryParse ("%42", NumberStyles.Integer, Nfi, out result));
+ AssertEquals (false, Int32.TryParse ("$42", NumberStyles.Integer, Nfi, out result));
+ AssertEquals (false, Int32.TryParse (" - 1 ", out result));
+ AssertEquals (false, Int32.TryParse (" - ", out result));
+ AssertEquals (false, Int32.TryParse ("100000000", NumberStyles.HexNumber, Nfi, out result));
}
+#endif
public void TestToString()
{
AssertEquals ("Custom format string ####", "000123", i.ToString ("0#0###"));
}
+ [Test]
+ public void TestSections ()
+ {
+ int hundred = 100;
+ int neghund = -100;
+
+ Assert ("#TS1", hundred.ToString ("#;#") == "100");
+ Assert ("#TS2", hundred.ToString ("-#;#") == "-100");
+ Assert ("#TS3", neghund.ToString ("#;#") == "100");
+ Assert ("#TS3", neghund.ToString ("#;-#") == "-100");
+ }
+
[Test]
public void ToString_Defaults ()
{