diff --git a/xUnitStudy.WebApi.Test/UseXUnitAssertTest.cs b/xUnitStudy.WebApi.Test/UseXUnitAssertTest.cs
index b384986..34ca880 100644
--- a/xUnitStudy.WebApi.Test/UseXUnitAssertTest.cs
+++ b/xUnitStudy.WebApi.Test/UseXUnitAssertTest.cs
@@ -8,26 +8,28 @@ using xUnitStudy.Model;
namespace xUnitStudy.WebApi.Test
{
+ ///
+ /// https://xunit.github.io/docs/comparisons
+ ///
[Trait("测试断言分组", "默认组")]
public class UseXUnitAssertTest : IDisposable
{
+ #region 准备
public UseXUnitAssertTest()
{
}
+ #endregion
+
+
+ #region Equal
[Fact]
public void Equal_String_Test()
{
Assert.Equal("ping", "ping");
}
- [Fact]
- public void NotEqual_String_Test()
- {
- Assert.NotEqual("ping", "ack");
- }
-
///
/// 断言 string 相等
/// 设置大小写、行尾符、空白符号 比较选项
@@ -74,32 +76,6 @@ namespace xUnitStudy.WebApi.Test
Assert.Equal(15d, 15d, precision: 0);
}
- [Fact]
- public void NotEqual_Double_Test()
- {
- //注意:先舍入,然后再比较
- //舍入规则:四舍五入
- //精度范围[0,15]位小数
-
- Assert //1.14d 约等于1.1 而1.15d 约等于1.2 所以不相等
- .NotEqual(1.14d, 1.15d, precision: 1);
-
- //舍入到2位小数精度,相等
- Assert.NotEqual(2.124d, 2.126d, 2);
-
- //舍入到3位小数精度,相等
- Assert.NotEqual(3.1234d, 3.1239d, 3);
-
- //舍入到4位小数精度,不等
- Assert.NotEqual(3.12346d, 3.12341d, 4);
-
- //舍入到整数,相等
- Assert.NotEqual(16d, 15.111d, precision: 0);
-
- //没有小数位,舍入到整数
- Assert.NotEqual(16d, 160d, precision: 0);
- }
-
[Fact]
public void Equal_Decimal_Test()
{
@@ -129,32 +105,6 @@ namespace xUnitStudy.WebApi.Test
Assert.Equal(15M, 15M, precision: 0);
}
- [Fact]
- public void NotEqual_Decimal_Test()
- {
- //注意:先舍入,然后再比较
- //舍入规则:四舍五入
- //精度范围[0,15]位小数
-
- Assert //1.14M 约等于1.1 而1.15M 约等于1.2 所以不相等
- .NotEqual(1.14M, 1.15M, precision: 1);
-
- //四舍五入到2位小数精度,不等
- Assert.NotEqual(2.123M, 2.129M, 2);
-
- //四舍五入到3位小数精度,不等
- Assert.NotEqual(3.1234M, 3.1236M, 3);
-
- //四舍五入到4位小数精度,不等
- Assert.NotEqual(3.12345M, 3.12349M, 4);
-
- //四舍五入到整数,不等
- Assert.NotEqual(15M, 15.501M, precision: 0);
-
- //没有小数位,四舍五入到整数
- Assert.NotEqual(29M, 15M, precision: 0);
- }
-
[Fact]
public void Equal_Datetime_Test()
{
@@ -167,7 +117,7 @@ namespace xUnitStudy.WebApi.Test
/// 泛型版基本上都有简化写法
///
[Fact]
- public void Equal_GenericT_Test()
+ public void Equal_Generic_T_Test()
{
//形如:Assert.Equal(Expected T, Actual T);
//常见类型都可以简化,或是有更好的非泛型版,此时,一般用非泛型版
@@ -180,7 +130,7 @@ namespace xUnitStudy.WebApi.Test
Assert //简化为
.Equal(3, 3);
- Assert.Equal(3, 3);
+ Assert.Equal(3L, 3L);
Assert //简化为
.Equal(3L, 3L);
@@ -237,13 +187,13 @@ namespace xUnitStudy.WebApi.Test
//对实现IEnumerable接口的对象进行 Equal比较
//形如:Equal(IEnumerable expected, IEnumerable actual);
- List expected = new List() {"first","second" };
- List actual = new List() {"first","second" };
+ List expected = new List() { "first", "second" };
+ List actual = new List() { "first", "second" };
Assert.Equal>(expected, actual);
Assert.//简写为
Equal(expected, actual);
- }
+ }
///
/// 实现IEnumerable接口对象的 Equal 比较
@@ -278,10 +228,481 @@ namespace xUnitStudy.WebApi.Test
expected[0].Id = 100;
Assert.NotEqual(expected, actual, comparer);
}
+ #endregion
+
+ #region NotEqual
+ [Fact]
+ public void NotEqual_String_Test()
+ {
+ Assert.NotEqual("ping", "ack");
+ }
+
+ [Fact]
+ public void NotEqual_Double_Test()
+ {
+ //注意:先舍入,然后再比较
+ //舍入规则:四舍五入
+ //精度范围[0,15]位小数
+
+ Assert //1.14d 约等于1.1 而1.15d 约等于1.2 所以不相等
+ .NotEqual(1.14d, 1.15d, precision: 1);
+
+ //舍入到2位小数精度,相等
+ Assert.NotEqual(2.124d, 2.126d, 2);
+
+ //舍入到3位小数精度,相等
+ Assert.NotEqual(3.1234d, 3.1239d, 3);
+
+ //舍入到4位小数精度,不等
+ Assert.NotEqual(3.12346d, 3.12341d, 4);
+
+ //舍入到整数,相等
+ Assert.NotEqual(16d, 15.111d, precision: 0);
+
+ //没有小数位,舍入到整数
+ Assert.NotEqual(16d, 160d, precision: 0);
+ }
+
+ [Fact]
+ public void NotEqual_Decimal_Test()
+ {
+ //注意:先舍入,然后再比较
+ //舍入规则:四舍五入
+ //精度范围[0,15]位小数
+
+ Assert //1.14M 约等于1.1 而1.15M 约等于1.2 所以不相等
+ .NotEqual(1.14M, 1.15M, precision: 1);
+
+ //四舍五入到2位小数精度,不等
+ Assert.NotEqual(2.123M, 2.129M, 2);
+
+ //四舍五入到3位小数精度,不等
+ Assert.NotEqual(3.1234M, 3.1236M, 3);
+
+ //四舍五入到4位小数精度,不等
+ Assert.NotEqual(3.12345M, 3.12349M, 4);
+
+ //四舍五入到整数,不等
+ Assert.NotEqual(15M, 15.501M, precision: 0);
+
+ //没有小数位,四舍五入到整数
+ Assert.NotEqual(29M, 15M, precision: 0);
+ }
+
+ [Fact]
+ public void NotEqual_Generic_T_Test()
+ {
+ //形如:Assert.NotEqual(Expected T, Actual T);
+
+ Assert.NotEqual("ping", "ack");
+ Assert //基本使用非泛型版本
+ .NotEqual("ping", "ack");
+
+ Assert.NotEqual(3, 4);
+ Assert //简化为
+ .NotEqual(3, 4);
+
+ Assert.NotEqual(3L, 4L);
+ Assert //简化为
+ .NotEqual(3L, 4L);
+
+ Assert.NotEqual(5.5d, 6.5d);
+ Assert //简化为
+ .NotEqual(5.5d, 6.5d);
+
+ Assert.NotEqual(5.5M, 5.6M);
+ Assert //简化为
+ .NotEqual(5.5M, 6.5M);
+
+ Assert.NotEqual(DateTime.Now.Date, DateTime.Now.Date.AddDays(1));
+ Assert //简化为
+ .NotEqual(DateTime.Now.Date, DateTime.Now.Date.AddDays(1));
+
+ //类或其它自定义结构比较,可以使用
+
+ var obj = new object();
+ var obj2 = new object();
+ Assert.NotEqual