using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Xunit; using Xunit.Abstractions; using Xunit.Extensions; using Xunit.Sdk; using TupleStudy; namespace TupleStudyTest { public class TupleStudyTest { private TupleStudy.TupleStudy tupleStudy; public TupleStudyTest() { tupleStudy = new TupleStudy.TupleStudy(); } [Fact] public void GetTuple_Constructor_One_Test() { var tuple = tupleStudy.GetTuple_Constructor_One(); Assert.Equal(1, tuple.Item1); } [Fact] public void GetTuple_Constructor_One_Test2() { var tuple = tupleStudy.GetTuple_Constructor_One(5); Assert.Equal(5, tuple.Item1); var tuple2 = tupleStudy.GetTuple_Constructor_One("wanggaofeng"); Assert.Equal("wanggaofeng", tuple2.Item1); var student = new Student() { Id = 1, Name = "wanggaofeng", Age = 28 }; var studentTuple = tupleStudy.GetTuple_Constructor_One (student); Assert.Equal(student, studentTuple.Item1); } [Fact] public void GetTuple_StaticMethod_Tow_Test() { var tuple = tupleStudy.GetTuple_StaticMethod_Tow(5,"wanggaofeng"); Assert.Equal(5, tuple.Item1); Assert.Equal("wanggaofeng", tuple.Item2); var student = new Student() { Id = 1, Name = "wanggaofeng", Age = 28 }; Assert.Equal(1, student.Id); Assert.Equal("wanggaofeng", student.Name); Assert.Equal(28, student.Age); var studentTuple = tupleStudy.GetTuple_StaticMethod_Tow("静态方法",student); Assert.Equal("静态方法", studentTuple.Item1); Assert.Equal(student, studentTuple.Item2); } [Fact] public void GetTuple_Constructor_Nest_Test() { var tuple = tupleStudy.GetTuple_Constructor_Nest(); Assert.Equal(1, tuple.Item1); Assert.Equal(2, tuple.Item2); Assert.Equal(3, tuple.Item3); Assert.Equal(4, tuple.Item4); Assert.Equal(5, tuple.Item5); Assert.Equal(6, tuple.Item6); Assert.Equal(7, tuple.Item7); Assert.Equal(8, tuple.Rest.Item1); Assert.Equal("嵌套Tuple", tuple.Rest.Item2); } [Fact] public void GetStudentTuple_Test() { var tuple = tupleStudy.GetStudentTuple(2,"王高峰",30); Assert.Equal(2, tuple.Item1); Assert.Equal("王高峰", tuple.Item2); Assert.True(30==tuple.Item3); } [Fact] public void SashEgg_Test() { var tuple1 = new Tuple("错误的参数",1, "白色金蛋", 2018001, new decimal(25.50)); var reslul1 = tupleStudy.SmashEgg(tuple1); Assert.False(reslul1); var tuple2 = new Tuple(1, "白色金蛋", 2018001, new decimal(25.50)); var reslul2 = tupleStudy.SmashEgg(tuple2); Assert.False(reslul2); var tuple3 = new Tuple(2, "白色金蛋", 2018001, new decimal(25.50)); var reslul3 = tupleStudy.SmashEgg(tuple3); Assert.True(reslul3); } } }