You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
TupleStudy/TupleStudyTest/TupleStudyTest.cs

107 lines
3.4 KiB
C#

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<int>(5);
Assert.Equal(5, tuple.Item1);
var tuple2 = tupleStudy.GetTuple_Constructor_One<string>("wanggaofeng");
Assert.Equal("wanggaofeng", tuple2.Item1);
var student = new Student() { Id = 1, Name = "wanggaofeng", Age = 28 };
var studentTuple = tupleStudy.GetTuple_Constructor_One <Student>(student);
Assert.Equal(student, studentTuple.Item1);
}
[Fact]
public void GetTuple_StaticMethod_Tow_Test()
{
var tuple = tupleStudy.GetTuple_StaticMethod_Tow<int,string>(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<string,Student>("静态方法",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<string,int, string, int, decimal>("错误的参数",1, "白色金蛋", 2018001, new decimal(25.50));
var reslul1 = tupleStudy.SmashEgg(tuple1);
Assert.False(reslul1);
var tuple2 = new Tuple<int,string,int,decimal>(1, "白色金蛋", 2018001, new decimal(25.50));
var reslul2 = tupleStudy.SmashEgg(tuple2);
Assert.False(reslul2);
var tuple3 = new Tuple<int, string, int, decimal>(2, "白色金蛋", 2018001, new decimal(25.50));
var reslul3 = tupleStudy.SmashEgg(tuple3);
Assert.True(reslul3);
}
}
}