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.

70 lines
1.6 KiB
C#

5 years ago
using System;
using System.Collections.Generic;
using System.Text;
using Xunit;
using Study.DelegateSeries.Core;
using Study.DelegateSeries.Core.Calculator;
namespace Study.DelegateSeries.Test
{
5 years ago
public class StudyDelegateTest : IDisposable, IClassFixture<InstanceDelegate>
5 years ago
{
#region 准备
5 years ago
private InstanceDelegate studyDelegate;
5 years ago
5 years ago
public StudyDelegateTest(InstanceDelegate _studyDelegate)
5 years ago
{
this.studyDelegate = _studyDelegate;
}
#endregion
#region 实例化委托测试
[Fact]
public void BaseInstanceTest()
{
var baseInstance = this.studyDelegate.BaseInstance();
Assert.NotNull(baseInstance);
Assert.True(baseInstance.Method.IsPublic);
}
[Fact]
public void AutoTypeInstanceTest()
{
var baseInstance = this.studyDelegate.AutoTypeInstance();
Assert.NotNull(baseInstance);
Assert.Equal("Difference", baseInstance.Method.Name);
}
[Fact]
public void AnonymousInstanceTest()
{
var baseInstance = this.studyDelegate.AnonymousInstance();
Assert.NotNull(baseInstance);
Assert.False(baseInstance.Method.IsSpecialName);
}
[Fact]
public void LambdaInstanceTest()
{
var baseInstance = this.studyDelegate.LambdaInstance();
Assert.NotNull(baseInstance);
Assert.False(baseInstance.Method.IsSpecialName);
}
#endregion
#region 清理
void IDisposable.Dispose()
{
}
#endregion
}
}