blob: b83e9c3e885e641a911558489a6b68f64c8c248c [file] [log] [blame]
using System;
using System.Globalization;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OfficeOpenXml.Utils;
namespace EPPlusTest.Utils
{
[TestClass]
public class ConvertUtilTest
{
[TestMethod]
public void TryParseNumericString()
{
double result;
object numericString = null;
double expected = 0;
Assert.IsFalse(ConvertUtil.TryParseNumericString(numericString, out result));
Assert.AreEqual(expected, result);
expected = 1442.0;
numericString = expected.ToString("e", CultureInfo.CurrentCulture); // 1.442E+003
Assert.IsTrue(ConvertUtil.TryParseNumericString(numericString, out result));
Assert.AreEqual(expected, result);
numericString = expected.ToString("f0", CultureInfo.CurrentCulture); // 1442
Assert.IsTrue(ConvertUtil.TryParseNumericString(numericString, out result));
Assert.AreEqual(expected, result);
numericString = expected.ToString("f2", CultureInfo.CurrentCulture); // 1442.00
Assert.IsTrue(ConvertUtil.TryParseNumericString(numericString, out result));
Assert.AreEqual(expected, result);
numericString = expected.ToString("n", CultureInfo.CurrentCulture); // 1,442.0
Assert.IsTrue(ConvertUtil.TryParseNumericString(numericString, out result));
Assert.AreEqual(expected, result);
expected = -0.00526;
numericString = expected.ToString("e", CultureInfo.CurrentCulture); // -5.26E-003
Assert.IsTrue(ConvertUtil.TryParseNumericString(numericString, out result));
Assert.AreEqual(expected, result);
numericString = expected.ToString("f0", CultureInfo.CurrentCulture); // -0
Assert.IsTrue(ConvertUtil.TryParseNumericString(numericString, out result));
Assert.AreEqual(0.0, result);
numericString = expected.ToString("f3", CultureInfo.CurrentCulture); // -0.005
Assert.IsTrue(ConvertUtil.TryParseNumericString(numericString, out result));
Assert.AreEqual(-0.005, result);
numericString = expected.ToString("n6", CultureInfo.CurrentCulture); // -0.005260
Assert.IsTrue(ConvertUtil.TryParseNumericString(numericString, out result));
Assert.AreEqual(expected, result);
}
[TestMethod]
public void TryParseDateString()
{
DateTime result;
object dateString = null;
DateTime expected = DateTime.MinValue;
Assert.IsFalse(ConvertUtil.TryParseDateString(dateString, out result));
Assert.AreEqual(expected, result);
expected = new DateTime(2013, 1, 15);
dateString = expected.ToString("d", CultureInfo.CurrentCulture); // 1/15/2013
Assert.IsTrue(ConvertUtil.TryParseDateString(dateString, out result));
Assert.AreEqual(expected, result);
dateString = expected.ToString("D", CultureInfo.CurrentCulture); // Tuesday, January 15, 2013
Assert.IsTrue(ConvertUtil.TryParseDateString(dateString, out result));
Assert.AreEqual(expected, result);
dateString = expected.ToString("F", CultureInfo.CurrentCulture); // Tuesday, January 15, 2013 12:00:00 AM
Assert.IsTrue(ConvertUtil.TryParseDateString(dateString, out result));
Assert.AreEqual(expected, result);
dateString = expected.ToString("g", CultureInfo.CurrentCulture); // 1/15/2013 12:00 AM
Assert.IsTrue(ConvertUtil.TryParseDateString(dateString, out result));
Assert.AreEqual(expected, result);
expected = new DateTime(2013, 1, 15, 15, 26, 32);
dateString = expected.ToString("F", CultureInfo.CurrentCulture); // Tuesday, January 15, 2013 3:26:32 PM
Assert.IsTrue(ConvertUtil.TryParseDateString(dateString, out result));
Assert.AreEqual(expected, result);
dateString = expected.ToString("g", CultureInfo.CurrentCulture); // 1/15/2013 3:26 PM
Assert.IsTrue(ConvertUtil.TryParseDateString(dateString, out result));
Assert.AreEqual(new DateTime(2013, 1, 15, 15, 26, 0), result);
}
}
}