blob: 77a423798f2e6779304bad51862214cfc963e1dc [file] [log] [blame]
using System;
using System.Text;
using System.Collections.Generic;
using System.Linq;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OfficeOpenXml.FormulaParsing.Excel.Functions;
namespace EPPlusTest.Excel.Functions
{
[TestClass]
public class ArgumentParsersImplementationsTests
{
[TestMethod, ExpectedException(typeof(ArgumentNullException))]
public void IntParserShouldThrowIfArgumentIsNull()
{
var parser = new IntArgumentParser();
parser.Parse(null);
}
[TestMethod]
public void IntParserShouldConvertToAnInteger()
{
var parser = new IntArgumentParser();
var result = parser.Parse(3);
Assert.AreEqual(3, result);
}
[TestMethod]
public void IntParserShouldConvertADoubleToAnInteger()
{
var parser = new IntArgumentParser();
var result = parser.Parse(3d);
Assert.AreEqual(3, result);
}
[TestMethod]
public void IntParserShouldConvertAStringValueToAnInteger()
{
var parser = new IntArgumentParser();
var result = parser.Parse("3");
Assert.AreEqual(3, result);
}
[TestMethod]
public void BoolParserShouldConvertNullToFalse()
{
var parser = new BoolArgumentParser();
var result = (bool)parser.Parse(null);
Assert.IsFalse(result);
}
[TestMethod]
public void BoolParserShouldConvertStringValueTrueToBoolValueTrue()
{
var parser = new BoolArgumentParser();
var result = (bool)parser.Parse("true");
Assert.IsTrue(result);
}
[TestMethod]
public void BoolParserShouldConvert0ToFalse()
{
var parser = new BoolArgumentParser();
var result = (bool)parser.Parse(0);
Assert.IsFalse(result);
}
[TestMethod]
public void BoolParserShouldConvert1ToTrue()
{
var parser = new BoolArgumentParser();
var result = (bool)parser.Parse(0);
Assert.IsFalse(result);
}
[TestMethod]
public void DoubleParserShouldConvertDoubleToDouble()
{
var parser = new DoubleArgumentParser();
var result = parser.Parse(3d);
Assert.AreEqual(3d, result);
}
[TestMethod]
public void DoubleParserShouldConvertIntToDouble()
{
var parser = new DoubleArgumentParser();
var result = parser.Parse(3);
Assert.AreEqual(3d, result);
}
[TestMethod, ExpectedException(typeof(ArgumentNullException))]
public void DoubleParserShouldThrowIfArgumentIsNull()
{
var parser = new DoubleArgumentParser();
parser.Parse(null);
}
[TestMethod]
public void DoubleParserConvertStringToDoubleWithDotSeparator()
{
var parser = new DoubleArgumentParser();
var result = parser.Parse("3.3");
Assert.AreEqual(3.3d, result);
}
}
}