|
|
|
|
namespace OptionsPattern.Sutdy.Experience
|
|
|
|
|
{
|
|
|
|
|
public class UseXunitTest:IDisposable
|
|
|
|
|
{
|
|
|
|
|
private readonly ITestOutputHelper? _output;
|
|
|
|
|
public UseXunitTest(ITestOutputHelperAccessor outputHelperAccessor)
|
|
|
|
|
{
|
|
|
|
|
if (outputHelperAccessor == null)
|
|
|
|
|
{
|
|
|
|
|
throw new ArgumentNullException(nameof(outputHelperAccessor));
|
|
|
|
|
}
|
|
|
|
|
_output = outputHelperAccessor.Output;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// xUnit <20><><EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD>
|
|
|
|
|
/// </summary>
|
|
|
|
|
[Fact]
|
|
|
|
|
public void UsabilityTest()
|
|
|
|
|
{
|
|
|
|
|
Assert.True(true, "6.1 <20><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>飬ʹ<E9A3AC><CAB9>xUnit<69><74><EFBFBD>Կ<EFBFBD><D4BF>ܣ<EFBFBD>");
|
|
|
|
|
_output?.WriteLine("6.1 <20><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>飡");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// <20><><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣
|
|
|
|
|
/// ʹ<>ã<EFBFBD>xUnit <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
|
|
|
|
|
/// </summary>
|
|
|
|
|
[Fact]
|
|
|
|
|
public void DoesNotThrow_Test()
|
|
|
|
|
{
|
|
|
|
|
//<2F><>ִ<EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Action codeSnippet = () =>
|
|
|
|
|
{
|
|
|
|
|
//ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//ģ<><C4A3><EFBFBD>쳣
|
|
|
|
|
//throw new Exception("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>׳<EFBFBD><D7B3><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3>");
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var exception = Record.Exception(codeSnippet);
|
|
|
|
|
Assert.Null(exception);
|
|
|
|
|
|
|
|
|
|
_output?.WriteLine("ʹ<><CAB9> xUnit <20><>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3>");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// <20><><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣
|
|
|
|
|
/// ʹ<>ã<EFBFBD>FluentAssertions <20>ⷽʽ<E2B7BD><CABD><EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣
|
|
|
|
|
/// </summary>
|
|
|
|
|
[Fact]
|
|
|
|
|
public void DoesNotThrow_UseFluentAssertions_Test()
|
|
|
|
|
{
|
|
|
|
|
//<2F><>ִ<EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Action codeSnippet= () =>
|
|
|
|
|
{
|
|
|
|
|
//ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
//ģ<><C4A3><EFBFBD>쳣
|
|
|
|
|
//throw new Exception("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>׳<EFBFBD><D7B3><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3>");
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD>ԣ<EFBFBD><D4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣
|
|
|
|
|
codeSnippet.Should().NotThrow();
|
|
|
|
|
|
|
|
|
|
_output?.WriteLine("ʹ<><CAB9> FluentAssertions <20>ⷽʽ<E2B7BD><CABD><EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3>");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void Dispose()
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|