2 Commits
0.2.6 ... 0.2.7

Author SHA1 Message Date
e7736f26b7 0.2.7 2021-11-18 11:32:56 +01:00
1a878fe4e7 Fix usages of decimal.TryParse 2021-11-18 11:32:07 +01:00
12 changed files with 31 additions and 20 deletions

View File

@@ -864,6 +864,17 @@ namespace VAR.ExpressionEvaluator.Tests
Assert.False((bool?)result);
}
[Fact()]
public void Misc__ProductWithStringDecimals_EqualsFalse()
{
EvaluationContext evaluationContex = new EvaluationContext();
evaluationContex.SetVariable("$1109", "1933");
evaluationContex.SetVariable("$1150", "02.00000");
string expression = "$1109 * $1150";
object result = Parser.EvaluateString(expression, evaluationContex);
Assert.Equal(3866.00000M, result);
}
#endregion Misc
}
}

View File

@@ -18,7 +18,7 @@ namespace VAR.ExpressionEvaluator
if (leftValue is string)
{
if (decimal.TryParse((string)leftValue, out decimal dec) == false)
if (decimal.TryParse((string)leftValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)leftValue));
}
@@ -26,7 +26,7 @@ namespace VAR.ExpressionEvaluator
}
if (rightValue is string)
{
if (decimal.TryParse((string)rightValue, out decimal dec) == false)
if (decimal.TryParse((string)rightValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)rightValue));
}

View File

@@ -44,7 +44,7 @@
// Decimal
if (leftValue is string)
{
if (decimal.TryParse((string)leftValue, out decimal dec) == false)
if (decimal.TryParse((string)leftValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
leftValue = null;
}
@@ -55,7 +55,7 @@
}
if (rightValue is string)
{
if (decimal.TryParse((string)rightValue, out decimal dec) == false)
if (decimal.TryParse((string)rightValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
rightValue = null;
}
@@ -85,7 +85,7 @@
return null;
}
decimal decValue;
if (decimal.TryParse(text, out decValue))
if (decimal.TryParse(text, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decValue))
{
return decValue != 0;
}

View File

@@ -24,7 +24,7 @@ namespace VAR.ExpressionEvaluator
}
else
{
if (decimal.TryParse((string)leftValue, out decimal dec) == false)
if (decimal.TryParse((string)leftValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)leftValue));
}
@@ -39,7 +39,7 @@ namespace VAR.ExpressionEvaluator
}
else
{
if (decimal.TryParse((string)rightValue, out decimal dec) == false)
if (decimal.TryParse((string)rightValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)rightValue));
}

View File

@@ -24,7 +24,7 @@ namespace VAR.ExpressionEvaluator
}
else
{
if (decimal.TryParse((string)leftValue, out decimal dec) == false)
if (decimal.TryParse((string)leftValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)leftValue));
}
@@ -39,7 +39,7 @@ namespace VAR.ExpressionEvaluator
}
else
{
if (decimal.TryParse((string)rightValue, out decimal dec) == false)
if (decimal.TryParse((string)rightValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)rightValue));
}

View File

@@ -24,7 +24,7 @@ namespace VAR.ExpressionEvaluator
}
else
{
if (decimal.TryParse((string)leftValue, out decimal dec) == false)
if (decimal.TryParse((string)leftValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)leftValue));
}
@@ -39,7 +39,7 @@ namespace VAR.ExpressionEvaluator
}
else
{
if (decimal.TryParse((string)rightValue, out decimal dec) == false)
if (decimal.TryParse((string)rightValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)rightValue));
}

View File

@@ -24,7 +24,7 @@ namespace VAR.ExpressionEvaluator
}
else
{
if (decimal.TryParse((string)leftValue, out decimal dec) == false)
if (decimal.TryParse((string)leftValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)leftValue));
}
@@ -39,7 +39,7 @@ namespace VAR.ExpressionEvaluator
}
else
{
if (decimal.TryParse((string)rightValue, out decimal dec) == false)
if (decimal.TryParse((string)rightValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)rightValue));
}

View File

@@ -18,7 +18,7 @@ namespace VAR.ExpressionEvaluator
if (leftValue is string)
{
if (decimal.TryParse((string)leftValue, out decimal dec) == false)
if (decimal.TryParse((string)leftValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)leftValue));
}
@@ -26,7 +26,7 @@ namespace VAR.ExpressionEvaluator
}
if (rightValue is string)
{
if (decimal.TryParse((string)rightValue, out decimal dec) == false)
if (decimal.TryParse((string)rightValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)rightValue));
}

View File

@@ -18,7 +18,7 @@ namespace VAR.ExpressionEvaluator
if (leftValue is string)
{
if (decimal.TryParse((string)leftValue, out decimal dec) == false)
if (decimal.TryParse((string)leftValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)leftValue));
}
@@ -26,7 +26,7 @@ namespace VAR.ExpressionEvaluator
}
if (rightValue is string)
{
if (decimal.TryParse((string)rightValue, out decimal dec) == false)
if (decimal.TryParse((string)rightValue, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)rightValue));
}

View File

@@ -18,7 +18,7 @@ namespace VAR.ExpressionEvaluator
if (value is string)
{
if (decimal.TryParse((string)value, out decimal dec) == false)
if (decimal.TryParse((string)value, System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out decimal dec) == false)
{
throw new Exception(string.Format("Can't convert to decimal string value \"{0}\"", (string)value));
}

View File

@@ -32,7 +32,7 @@ namespace VAR.ExpressionEvaluator
#region Creator
private ITokenizer _tokenizer;
private readonly ITokenizer _tokenizer;
public Parser(ITokenizer tokenizer)
{

View File

@@ -8,7 +8,7 @@
<PropertyGroup>
<PackageId>VAR.ExpressionEvaluator</PackageId>
<Title>VAR.ExpressionEvaluator</Title>
<Version>0.2.6</Version>
<Version>0.2.7</Version>
<Description>Expression Evaluation Library</Description>
<Authors>VAR</Authors>
<Company>VAR</Company>