Merge pull request #606 from sesef/master
[mono.git] / mcs / class / corlib / Test / System / DecimalTest.cs
index 87ddc5ec68d71703d133175d803d720904f576eb..4339edce397aa1eefbc4b5ce519e857081382055 100644 (file)
@@ -1129,6 +1129,13 @@ namespace MonoTests.System
                        }
                }
 */
+
+               [Test]
+               public void ParseCultureSeparator ()
+               {
+                       Assert.AreEqual (2.2m, decimal.Parse ("2.2", new CultureInfo("es-MX")));
+               }
+
                [Test]
                [Category ("TargetJvmNotWorking")]
                public void TryParse ()
@@ -1532,5 +1539,24 @@ namespace MonoTests.System
 
                        Assert.Fail ("Expected FormatException");
                }
+
+               [Test]
+               [SetCulture("en-US")]
+               public void ParseZeros ()
+               {
+                       var d = Decimal.Parse ("0.000");
+                       var bits = Decimal.GetBits (d);
+                       Assert.AreEqual (0, bits[0], "#1");
+                       Assert.AreEqual (0, bits[1], "#2");
+                       Assert.AreEqual (0, bits[2], "#3");
+                       Assert.AreEqual (196608, bits[3], "#4");
+                       Assert.AreEqual ("0.000", d.ToString (), "#5");
+
+                       d = Decimal.Parse("0.000000000000000000000000000000000000000000000000000000000000000000");
+                       Assert.AreEqual ("0.0000000000000000000000000000", d.ToString (), "#10");
+
+                       d = Decimal.Parse ("0.");
+                       Assert.AreEqual ("0", d.ToString (), "#11");
+               }
        }
 }