Skip to content

Commit 5caf142

Browse files
authored
add conversions tests (dotnet#25)
1 parent 35099ad commit 5caf142

File tree

1 file changed

+80
-0
lines changed

1 file changed

+80
-0
lines changed

src/Test/ConversionTests.cs

+80
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
using System;
2+
using Microsoft.VisualStudio.TestTools.UnitTesting;
3+
4+
namespace Microsoft.ML.Auto.Test
5+
{
6+
[TestClass]
7+
public class ConversionTests
8+
{
9+
[TestMethod]
10+
public void ConvertFloatMissingValues()
11+
{
12+
var missingValues = new string[]
13+
{
14+
"?",
15+
"na", "n/a", "nan",
16+
"NA", "N/A", "NaN", "NAN"
17+
};
18+
19+
foreach(var missingValue in missingValues)
20+
{
21+
float value;
22+
var success = Conversions.TryParse(missingValue.AsMemory(), out value);
23+
Assert.IsTrue(success);
24+
Assert.AreEqual(value, float.NaN);
25+
}
26+
}
27+
28+
[TestMethod]
29+
public void ConvertFloatParseFailure()
30+
{
31+
var values = new string[]
32+
{
33+
"a", "aa", "nb", "aaa", "naa", "nba", "n/b"
34+
};
35+
36+
foreach (var value in values)
37+
{
38+
var success = Conversions.TryParse(value.AsMemory(), out float _);
39+
Assert.IsFalse(success);
40+
}
41+
}
42+
43+
[TestMethod]
44+
public void ConvertBoolMissingValues()
45+
{
46+
var missingValues = new string[]
47+
{
48+
"",
49+
"no", "NO", "+1", "-1",
50+
"yes", "YES",
51+
"true", "TRUE",
52+
"false", "FALSE"
53+
};
54+
55+
foreach (var missingValue in missingValues)
56+
{
57+
var success = Conversions.TryParse(missingValue.AsMemory(), out bool _);
58+
Assert.IsTrue(success);
59+
}
60+
}
61+
62+
[TestMethod]
63+
public void ConvertBoolParseFailure()
64+
{
65+
var values = new string[]
66+
{
67+
"aa", "na", "+a", "-a",
68+
"aaa", "yaa", "yea",
69+
"aaaa", "taaa", "traa", "trua",
70+
"aaaaa", "fbbbb", "faaaa", "falaa", "falsa"
71+
};
72+
73+
foreach (var value in values)
74+
{
75+
var success = Conversions.TryParse(value.AsMemory(), out bool _);
76+
Assert.IsFalse(success);
77+
}
78+
}
79+
}
80+
}

0 commit comments

Comments
 (0)