mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-23 03:04:29 +08:00
- 优化 CommandCoroutineExtensions 中的代码格式和异常处理逻辑 - 简化 WaitForEvent 和 WaitForEventWithTimeout 中的EventData属性实现 - 调整 EventListenerScope 中的EventData属性访问器 - 重构 ControlExtensions 中 TakeIf 和 TakeUnless 方法的实现 - 优化 FunctionExtensions 中 Repeat 和 Partial 方法的代码结构 - 调整 PipeExtensions 和其他扩展类的文档注释格式 - 修改测试代码中的协程迭代和事件注册相关实现 - 优化 DataRepository 中的异步操作实现方式 = [release ci]
75 lines
1.8 KiB
C#
75 lines
1.8 KiB
C#
using GFramework.Core.functional.control;
|
||
using NUnit.Framework;
|
||
|
||
namespace GFramework.Core.Tests.functional.control;
|
||
|
||
/// <summary>
|
||
/// ControlExtensions扩展方法测试类,用于验证控制流函数式编程扩展方法的正确性
|
||
/// </summary>
|
||
[TestFixture]
|
||
public class ControlExtensionsTests
|
||
{
|
||
/// <summary>
|
||
/// 测试TakeIf方法 - 验证条件为真时返回原值
|
||
/// </summary>
|
||
[Test]
|
||
public void TakeIf_Should_Return_Value_When_Condition_Is_True()
|
||
{
|
||
// Arrange
|
||
var str = "Hello";
|
||
|
||
// Act
|
||
var result = str.TakeIf(s => s.Length > 3);
|
||
|
||
// Assert
|
||
Assert.That(result, Is.EqualTo("Hello"));
|
||
}
|
||
|
||
/// <summary>
|
||
/// 测试TakeIf方法 - 验证条件为假时返回null
|
||
/// </summary>
|
||
[Test]
|
||
public void TakeIf_Should_Return_Null_When_Condition_Is_False()
|
||
{
|
||
// Arrange
|
||
var str = "Hi";
|
||
|
||
// Act
|
||
var result = str.TakeIf(s => s.Length > 3);
|
||
|
||
// Assert
|
||
Assert.That(result, Is.Null);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 测试TakeUnless方法 - 验证条件为假时返回原值
|
||
/// </summary>
|
||
[Test]
|
||
public void TakeUnless_Should_Return_Value_When_Condition_Is_False()
|
||
{
|
||
// Arrange
|
||
var str = "Hi";
|
||
|
||
// Act
|
||
var result = str.TakeUnless(s => s.Length > 3);
|
||
|
||
// Assert
|
||
Assert.That(result, Is.EqualTo("Hi"));
|
||
}
|
||
|
||
/// <summary>
|
||
/// 测试TakeUnless方法 - 验证条件为真时返回null
|
||
/// </summary>
|
||
[Test]
|
||
public void TakeUnless_Should_Return_Null_When_Condition_Is_True()
|
||
{
|
||
// Arrange
|
||
var str = "Hello";
|
||
|
||
// Act
|
||
var result = str.TakeUnless(s => s.Length > 3);
|
||
|
||
// Assert
|
||
Assert.That(result, Is.Null);
|
||
}
|
||
} |