GeWuYou
|
445513b784
|
docs(tests): 为测试文件添加XML文档注释
- 为AsyncExtensionsTests中的所有测试方法添加描述性注释
- 为CollectionExtensionsTests中的所有测试方法添加描述性注释
- 为DelayTests类和其中的测试方法添加描述性注释
- 为GuardExtensionsTests中的所有测试方法添加描述性注释
- 为MediatorComprehensiveTests中的所有测试方法添加描述性注释
- 为NumericExtensionsTests中的所有测试方法添加描述性注释
- 为OptionTests中的所有测试方法添加描述性注释
- 为PipeExtensionsTests中的所有测试方法添加描述性注释
|
2026-02-26 14:45:39 +08:00 |
|
GeWuYou
|
59fbb2253b
|
feat(tests): 添加函数式编程扩展和Option类型测试
- 添加ControlExtensions的TakeIfValue、TakeUnlessValue、When、RepeatUntil和Retry方法测试
- 添加FunctionExtensions的Compose、AndThen、Curry、Uncurry、Defer和Once方法测试
- 添加Option<T>类型的完整测试套件,包括工厂方法、取值、变换、过滤、模式匹配等功能
- 添加PipeExtensions的Tap、Pipe、Let、PipeIf方法测试
- 移除AsyncExtensionsTests中的WhenAll相关测试
- 移除NumericExtensionsTests中的Clamp测试
- 更新ObjectExtensionsTests中Do方法为Also方法的测试
- 修复ControlExtensions文档中的XML代码标签格式
- 在AsyncExtensionsTests中添加对GFramework.Core.Functional.Async的引用
- 在ObjectExtensionsTests中添加对GFramework.Core.functional.pipe的引用
|
2026-02-26 14:45:39 +08:00 |
|
GeWuYou
|
eec50ab45b
|
feat(events): 添加事件上下文支持和线程安全改进
- 在EventBus中添加RegisterWithContext方法支持事件上下文
- 实现EventContext<T>类包装事件数据并提供处理控制
- 在PriorityEvent中添加上下文事件处理器和相关管理逻辑
- 改进事件触发机制支持普通和上下文处理器混合使用
- 优化MicrosoftDiContainer的线程安全性和并发访问
- 修复SpanExtensions中TryParseValue的返回值类型问题
- 添加全面的单元测试覆盖新功能和边界情况
|
2026-02-25 21:39:53 +08:00 |
|
GeWuYou
|
e2dca4f5a6
|
feat(events): 添加事件优先级和传播控制功能
- 实现了事件优先级机制,支持按优先级顺序执行事件处理器
- 新增EventPropagation枚举,支持All、UntilHandled和Highest三种传播模式
- 添加Register方法的重载版本,支持指定事件处理器优先级
- 实现Send方法的重载版本,支持指定事件传播模式
- 新增PriorityEvent类处理带优先级的事件逻辑
- 添加IocContainer的CreateScope方法支持服务作用域管理
- 实现RegisterTransient和RegisterScoped方法完善依赖注入生命周期
- 新增SpanExtensions扩展方法提供高性能的span操作功能
- 添加全面的单元测试覆盖事件优先级、IoC容器生命周期和span扩展功能
|
2026-02-25 21:39:53 +08:00 |
|
GeWuYou
|
e2cfa7bffa
|
fix(pool): 修复对象池系统中的双重释放和线程安全问题
- 修复 ActiveCount 在双重释放时可能变为负数的问题
- 添加对错误 key 释放的防护和警告日志
- 优化 StringBuilderPool 使用 ConcurrentBag 实现线程安全
- 改进池容量限制逻辑,超过最大容量的对象将被销毁
- 添加完整的单元测试验证双重释放、错误释放和线程安全场景
|
2026-02-25 20:40:02 +08:00 |
|
GeWuYou
|
eb763a9bc4
|
feat(pool): 重构对象池系统增加统计和容量控制功能
- 引入 PoolInfo 类来管理对象池的核心数据结构和统计信息
- 添加对象池容量限制功能,超过容量时自动销毁多余对象
- 实现对象池统计功能,跟踪创建、获取、释放、销毁等操作计数
- 新增 GetPoolSize 和 GetActiveCount 方法获取池状态信息
- 添加 SetMaxCapacity 方法设置池的最大容量限制
- 实现 Prewarm 功能用于预创建对象提高性能
- 提供 GetStatistics 方法获取详细的池统计信息
- 添加 IsExternalInit 支持旧版 .NET 框架的 init-only 属性
- 扩展 ArrayPool 添加便捷的扩展方法和自动释放功能
- 新增 StringBuilderPool 提供高性能的字符串构建器复用
- 完善单元测试覆盖新增的所有功能特性
|
2026-02-25 20:40:02 +08:00 |
|
GeWuYou
|
61349a83ab
|
feat(functional): 增强Result类型功能并添加完整测试覆盖
- 为Result.Failure方法添加参数验证,确保异常和消息参数不为空
- 重构Result<T>内部状态枚举顺序以优化比较逻辑
- 为Result<T>的Map、Bind和MapAsync方法添加参数验证和异常处理
- 在Result<T>比较逻辑中添加类型不可比较时的安全处理
- 添加ResultExtensions.BindAsync扩展方法支持异步绑定操作
- 重写Combine扩展方法中对失败结果的处理逻辑
- 添加完整的Result相关类型单元测试覆盖所有功能场景
- 为Result类型添加详细的XML文档注释和使用示例
|
2026-02-25 20:21:37 +08:00 |
|
GeWuYou
|
1cb7dfdb14
|
feat(functional): 添加函数式编程支持和Result类型实现
- 实现了Result和Result<T>结构体,提供函数式错误处理
- 添加了AsyncExtensions中的函数式编程命名空间引用
- 在FunctionExtensions中添加函数式编程相关引用
- 从项目文件中移除LanguageExt.Core依赖包
- 重构GlobalUsings.cs移除不必要的全局引用
- 添加ResultExtensions扩展方法支持函数式操作
- 实现Map、Bind、Match等核心函数式编程方法
- 添加异步操作支持和安全执行委托功能
|
2026-02-25 20:21:37 +08:00 |
|
GeWuYou
|
ee3f8c97df
|
fix(tests): 修正异步扩展测试中的异常类型断言
- 将 OperationCanceledException 替换为 TaskCanceledException 进行正确的异常断言
|
2026-02-25 17:28:52 +08:00 |
|
GeWuYou
|
cddd1fa627
|
test(extensions): 更新异步扩展方法测试以使用直接调用方式
- 移除旧的Arrange步骤,直接在Act步骤中调用AsyncExtensions.WithTimeout方法
- 添加新的测试用例验证超时时内部任务能够被正确取消
- 修改现有测试用例适配新的方法调用方式
- 简化异常处理相关的断言逻辑
|
2026-02-25 17:28:52 +08:00 |
|
GeWuYou
|
475f301d9f
|
feat(extensions): 添加多个扩展方法类和对应测试
- 新增 AsyncExtensions 提供异步任务超时、重试、安全执行等功能
- 新增 CollectionExtensions 提供集合遍历、空值检查、过滤等扩展功能
- 新增 GuardExtensions 提供参数验证的 Guard 模式扩展方法
- 新增 NumericExtensions 提供数值范围限制、插值计算等数学扩展功能
- 为所有扩展方法添加完整的单元测试覆盖正常和异常情况
- 包含详细的 XML 文档注释和使用示例代码
|
2026-02-25 17:28:52 +08:00 |
|
GeWuYou
|
4fd90e45a1
|
feat(godot): 添加资源仓储功能支持
- 新增 IHasKey 接口定义键值访问契约
- 新增 IRepository 接口提供通用数据仓储功能
- 实现 GodotResourceRepository 类支持资源的存储和加载
- 添加 IResourceRepository 接口扩展通用仓储功能
- 实现从路径批量加载 Godot 资源的功能
- 支持递归加载子目录中的资源文件
- 提供 .tres 和 .res 文件的自动识别和加载
|
2026-02-23 22:33:29 +08:00 |
|
GeWuYou
|
ed187473dd
|
test(architecture): 更新架构服务测试以验证内置模块注册
- 添加了对ArchitectureProperties和GFramework.Core.services的引用
- 实现了RegisterBuiltInServices方法用于注册内置服务
- 修改了构造函数测试以验证容器初始化而非所有服务
- 更新了EventBus、CommandExecutor和QueryExecutor的测试以验证注册后可用性
- 添加了AsyncQueryExecutor可用性测试
- 添加了未注册服务时EventBus为null的测试
- 在多个实例测试中添加了模块注册以确保独立性
- 添加了ModuleManager属性非空测试
- 实现了ECS配置开关控制模块注册的测试
- 移除了TestArchitectureContextV3中的硬编码服务实现
- 更新了ECS相关测试以直接注册EcsWorld到容器中
- 改进了ECS世界获取失败时的错误消息
|
2026-02-23 13:53:29 +08:00 |
|
GeWuYou
|
89b7bcca8a
|
feat(ecs): 为ECS相关功能添加实验性特性标记
- 在ArchitectureContext中的ECS相关方法添加[Experimental]特性
- 在ECS测试类上添加[Experimental]特性标记
- 为ECS基础测试方法添加实验性特性
- 统一使用System.Diagnostics.CodeAnalysis命名空间
- 标记GetEcsWorld、RegisterEcsSystem等核心方法为实验性API
|
2026-02-23 12:27:16 +08:00 |
|
GeWuYou
|
3db89ab498
|
refactor(architecture): 重构架构初始化和销毁机制
- 将Init方法统一重命名为Initialize方法以提高一致性
- 修改Architecture类中的组件注册逻辑,优化去重判断
- 更新ECS系统基础类以使用新的初始化接口
- 重构EcsWorld类使用属性自动实现而非私有字段
- 移除过时的EcsUsageExample示例文件
- 更新相关测试类以匹配新的初始化方法命名
- 改进代码注释和文档字符串格式
|
2026-02-23 12:27:16 +08:00 |
|
GeWuYou
|
35845be93f
|
test(ecs): 添加高级ECS集成测试并完善测试覆盖
- 新增EcsAdvancedTests类,包含完整的ECS系统测试套件
- 添加EcsWorld高级功能测试,包括实体创建、销毁和组件操作
- 实现EcsSystemRunner生命周期控制测试,验证启动停止行为
- 添加多系统交互测试,验证优先级执行顺序
- 完善组件操作测试,涵盖增删改查场景
- 集成ArchitectureContext与ECS的测试用例
- 添加依赖注入容器的ECS系统注册测试
- 补充系统运行器异常处理和资源清理测试
|
2026-02-23 12:27:16 +08:00 |
|
GeWuYou
|
6ee7a52326
|
fix(mediator): 修复参数验证错误消息中的字符串拼接问题
- 修正了 Name 参数为空时错误消息中的字符串拼接格式
- 在错误消息中添加了适当的空格分隔符
|
2026-02-23 12:27:16 +08:00 |
|
GeWuYou
|
5f3fac2147
|
test(ecstests): 添加ECS测试并优化中介者测试的异常断言
- 添加EcsBasicTests类,实现ECS基础功能测试包括实体创建、组件设置、系统更新等
- 添加EcsIntegrationTests类,实现ECS集成测试包括性能基准测试和优先级调度验证
- 修改MediatorComprehensiveTests中的断言,使用OperationCanceledException替代TaskCanceledException
- 移除流测试中的冗余取消令牌传递,简化异步流的取消测试逻辑
|
2026-02-23 12:27:16 +08:00 |
|
GeWuYou
|
daff1fa12b
|
feat(architecture): 集成Arch ECS框架并升级目标框架
- 在ArchitectureContext中添加ECS世界和系统调度器支持
- 添加IEcsWorld和IEcsSystem接口定义
- 实现EcsWorld、EcsSystemBase和EcsSystemRunner核心类
- 添加Position和Velocity示例组件及MovementSystem示例
- 创建ECS使用示例代码
- 将多个项目的TargetFramework从netstandard2.0升级到netstandard2.1
- 添加Arch和Arch.System包依赖到核心项目
- 在测试项目中添加ECS相关接口的模拟实现
|
2026-02-23 12:27:16 +08:00 |
|
dependabot[bot]
|
3f0a2f5bda
|
Bump NUnit from 4.4.0 to 4.5.0
---
updated-dependencies:
- dependency-name: NUnit
dependency-version: 4.5.0
dependency-type: direct:production
update-type: version-update:semver-minor
- dependency-name: NUnit
dependency-version: 4.5.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
|
2026-02-20 20:21:40 +08:00 |
|
GeWuYou
|
56769cbf01
|
feat(architecture): 添加异步销毁功能支持
- 在 Architecture 中添加对 IAsyncDestroyable 接口的支持
- 将销毁集合类型从 IDestroyable 改为 object 以支持多种销毁接口
- 实现 DestroyAsync 方法提供异步销毁能力
- 保留旧的同步 Destroy 方法用于向后兼容
- 在 StateMachineSystem 中添加异步销毁状态的支持
- 添加 IAsyncDestroyable、IAsyncInitializable 和 IAsyncLifecycle 接口定义
- 更新测试代码以使用新的异步销毁方法
- 在架构销毁时清理依赖注入容器
|
2026-02-17 18:41:16 +08:00 |
|
GeWuYou
|
058dff010c
|
refactor(tests): 移除架构服务测试中的未实现方法
- 从 ArchitectureServicesTests 类中删除 QueryAsync 方法
- 从 ArchitectureServicesTests 类中删除 PublishEventAsync 方法
- 从 GameContextTests 类中删除 QueryAsync 方法
- 从 GameContextTests 类中删除 PublishEventAsync 方法
- 清理相关的方法签名和异常抛出代码
- 简化测试类结构,移除不必要的接口实现
|
2026-02-17 18:41:16 +08:00 |
|
GeWuYou
|
d76751c636
|
refactor(architecture): 移除查询和事件发布语法糖方法
- 删除 ArchitectureContext 中的 QueryAsync 和 PublishEventAsync 扩展方法
- 删除 ContextAwareExtensions 中对应的扩展方法实现
- 从 IArchitectureContext 接口中移除相关方法定义
- 更新测试代码中的参数命名从 command 到 query
- 移除相关的单元测试用例
- 修正 Godot 扩展中对 PublishEventAsync 的调用为 PublishAsync
|
2026-02-17 18:41:16 +08:00 |
|
GeWuYou
|
984829c368
|
refactor(coroutine): 移除命令等待事件协程扩展并改进测试
- 从 MediatorCoroutineExtensions 中移除 SendCommandAndWaitEventCoroutine 相关代码
- 从 CommandCoroutineExtensionsTests 中移除对应的测试方法
- 更新测试用例验证逻辑,统一使用静态方法调用方式
- 添加新的 MediatorCoroutineExtensionsTests 测试类
- 修改测试方法名称以更准确反映测试行为
- 统一异常处理和参数验证的测试覆盖
|
2026-02-16 22:44:52 +08:00 |
|
GeWuYou
|
51ed593acb
|
refactor(cqrs): 重构CQRS架构基础组件并新增核心基类
- 将命令相关抽象接口从command目录迁移至cqrs.command目录
- 新增CommandBase、NotificationBase、QueryBase和RequestBase通用基类
- 统一所有CQRS组件的命名空间为GFramework.Core.Abstractions.cqrs
- 更新所有引用位置的using语句指向新的命名空间路径
- 为命令和查询输入接口添加IInput基接口继承
- 在测试文件中同步更新相关的引用路径修改
|
2026-02-16 20:55:06 +08:00 |
|
GeWuYou
|
7552337b3f
|
feat(godot): 添加协程扩展功能支持Mediator模式
- 新增ContextAwareCoroutineExtensions类,提供IContextAware接口的协程扩展方法
- 实现RunCommandCoroutine、RunQueryCoroutine和RunPublishCoroutine方法
- 将原有CoroutineExtensions重命名为CoroutineNodeExtensions并迁移相关功能
- 添加文件头版权信息到新的协程扩展类
- 重构协程生命周期管理方法,包括RunCoroutine和CancelWith系列方法
- 移除测试文件中关于日志行为的占位测试用例
|
2026-02-16 19:28:27 +08:00 |
|
GeWuYou
|
d3ffcbc7bf
|
refactor(tests): 移除状态机测试中的重复代码
- 删除了 StateMachineSystemTests.cs 中关于 ChangeTo 方法的基本功能测试
- 删除了 StateMachineTests.cs 中关于状态切换、注册注销等基础功能的测试用例
- 保留了异步操作相关的测试方法以简化测试套件
- 减少了测试文件的代码量并提高维护效率
|
2026-02-15 22:59:44 +08:00 |
|
GeWuYou
|
38967d047a
|
feat(core): 扩展ContextAwareExtensions功能并增强状态机系统
- 在ContextAwareExtensions中添加事件发送、注册和取消注册方法
- 添加环境对象获取功能
- 扩展命令和查询功能支持同步、异步及中介者模式
- 添加统一请求处理方法和便捷扩展方法
- 为StateMachineSystem添加异步状态切换事件通知功能
- 添加状态机异步操作相关单元测试
- 扩展现有测试类以覆盖新增功能
- [release ci]
|
2026-02-15 19:00:06 +08:00 |
|
GeWuYou
|
7e2a1ff66d
|
test(state): 更新状态机上下文获取测试验证逻辑
- 将断言修改为验证 GetContext 方法抛出 InvalidOperationException 异常
- 在状态机初始化前验证状态上下文为空的预期行为
- 保持初始化后状态上下文正确设置的验证逻辑
|
2026-02-15 19:00:06 +08:00 |
|
GeWuYou
|
e6a114fe7b
|
test(mediator): 调整缓存性能测试的阈值要求
- 将缓存性能测试中的性能比较阈值从 2.0 倍放宽到 2.5 倍
- 保持缓存应该比未缓存版本更快的测试逻辑
- 更新了测试断言以适应更宽松的性能标准
- [release ci]
|
2026-02-14 21:43:07 +08:00 |
|
GeWuYou
|
7c77149ab0
|
fix(mediator): 修复高级功能测试中的异常处理和断路器逻辑
- 将 OperationCanceledException 替换为更具体的 TaskCanceledException
- 修复瞬态错误处理器中的计数器逻辑,仅在 MaxErrors > 0 时递增
- 实现断路器功能,当失败次数达到阈值时打开断路器
- 添加Saga事务的补偿机制,在步骤失败时执行回滚操作
- 为验证行为添加输入验证逻辑
- 注册传统CQRS组件以支持混合模式测试
- 修复架构集成测试中的上下文访问问题
- [release ci]
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
bed4f66576
|
test(mediator): 添加Mediator高级特性和架构集成测试
- 实现多通知处理器调用验证功能
- 添加取消令牌对长运行请求的取消支持
- 实现流请求的取消令牌处理机制
- 添加并发请求干扰测试用例
- 实现处理器异常传播验证功能
- 添加多命令处理器共享对象修改测试
- 实现查询缓存功能测试用例
- 添加通知排序保持功能验证
- 实现流请求过滤功能测试
- 添加请求验证行为测试用例
- 实现性能基准测试功能
- 添加传统CQRS与Mediator共存测试
- 实现管道行为测试用例
- 添加高并发性能测试功能
- 实现内存使用稳定性测试
- 添加瞬态错误处理测试用例
- 实现熔断器模式测试功能
- 添加Saga模式一致性测试用例
- 实现请求链式依赖测试功能
- 添加外部服务依赖超时测试
- 实现数据库事务处理测试用例
- 添加架构上下文访问测试功能
- 实现服务检索功能测试用例
- 添加嵌套请求发送测试功能
- 实现生命周期管理测试用例
- 添加作用域服务隔离测试功能
- 实现错误传播测试用例
- 添加上下文性能开销测试功能
- 实现缓存性能提升测试用例
- 添加并发安全访问测试功能
- 实现状态一致性测试用例
- 添加系统集成测试功能
- 实现混合CQRS模式测试用例
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
e755c5c7f8
|
refactor(core): 替换Mediator集成实现为通用服务配置机制
- 移除专用的RegisterMediator方法,替换为ExecuteServicesHook通用服务配置方法
- 从架构配置中移除Mediator特定配置选项,改为通用服务配置委托
- 在架构基类中添加Configurator属性支持,允许子类提供自定义服务配置
- 更新测试代码适配新的服务配置方式,通过ExecuteServicesHook注册Mediator
- 移除过时的测试组件和相关验证逻辑
- 删除Mediator.SourceGenerator包引用,保留运行时依赖
- 添加WaitUntilReadyAsync方法的详细文档注释
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
a61c796e4d
|
refactor(tests): 更新查询接口类型引用
- 将 Mediator.IQuery<int> 替换为 IQuery<int> 类型引用
- 保持空值参数测试逻辑不变
- 确保类型转换正确性
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
d3e1e04e89
|
feat(architecture): 添加Mediator模式支持并扩展架构上下文功能
- 在ArchitectureContext中新增Sender属性和SendCommand/SendQuery方法
- 实现异步命令和查询的发送功能,支持取消令牌
- 提供同步版本的命令和查询发送方法以保持向后兼容性
- 更新IArchitectureContext接口定义新增相关方法签名
- 添加完整的Mediator集成测试验证新功能
- 配置项目依赖移除旧的Mediator包并添加必要引用
- 修复测试中的类型引用和方法重载问题
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
55ec42a670
|
feat(ioc): 替换自定义IoC容器为Microsoft.Extensions.DependencyInjection
- 移除原有的IocContainer实现
- 添加MicrosoftDiContainer作为Microsoft.Extensions.DependencyInjection的适配器
- 修改ArchitectureServices使用MicrosoftDiContainer替代IocContainer
- 更新所有相关测试类使用MicrosoftDiContainer
- 添加Mediator和Microsoft.Extensions.DependencyInjection包引用
- 扩展IIocContainer接口支持更多注册方法
- 在架构初始化中添加Mediator服务注册
|
2026-02-14 19:41:21 +08:00 |
|
GeWuYou
|
026d9964fe
|
docs(game): 更新游戏模块文档并优化整体结构
- 重写了 GFramework.Game 模块的完整文档
- 添加了详细的目录结构和使用示例
- 扩展了架构模块系统的说明和代码示例
- 增加了资产管理、存储系统和序列化系统的详细文档
- 提供了模块配置和高级用法的指导
- 完善了存储系统的分层存储和缓存实现
- 添加了序列化系统的自定义转换器示例
- 更新了核心特性和设计理念的描述
- 优化了文档的整体组织结构和可读性
- 刷新了 VitePress 依赖缓存以同步文档变更
|
2026-02-11 12:52:14 +08:00 |
|
GeWuYou
|
e83dd278b3
|
test(coroutine): 添加协程指令单元测试并改进现有测试
- 为 Delay 指令添加完整的单元测试覆盖各种时间情况
- 为 WaitForCoroutine 指令添加单元测试验证协程等待功能
- 为 WaitForFrames 指令添加单元测试覆盖帧计数逻辑
- 为 WaitForTask<T> 指令添加单元测试包括异常处理场景
- 为 WaitOneFrame 指令添加单元测试验证单帧等待
- 为 WaitUntil 和 WaitWhile 指令添加单元测试覆盖谓词逻辑
- 将 WaitForMultipleEventsTests 中的异步方法标记为 async Task 类型
- 修改测试事件类的 Data 属性为可变的 set 访问器而不是只读 init
- 优化 WaitForMultipleEventsTests 中的断言注释描述
|
2026-02-10 23:47:40 +08:00 |
|
GeWuYou
|
42a1ab0f29
|
fix(coroutine): 修复 WaitForMultipleEvents 的事件处理逻辑
- 添加了完成状态检查,避免在已完成或释放后继续处理事件
- 立即注销事件监听器以防止内存泄漏
- 在事件触发后清理注册器引用
- 添加了完整的单元测试覆盖各种事件场景
|
2026-02-10 23:47:40 +08:00 |
|
GeWuYou
|
4748198696
|
feat(coroutine): 添加多种协程等待指令及对应单元测试
- 实现 WaitForConditionChange 指令,支持等待条件状态变化
- 实现 WaitForEndOfFrame 指令,支持等待当前帧渲染完成
- 实现 WaitForFixedUpdate 指令,支持等待物理固定更新周期
- 实现 WaitForMultipleEvents 指令,支持等待多个事件中的任意一个触发
- 实现 WaitForNextFrame 指令,支持等待下一帧开始
- 实现 WaitForPredicate 指令,支持通用谓词等待功能
- 实现 WaitForSecondsRealtime 指令,支持基于真实时间的等待
- 实现 WaitForSecondsScaled 指令,支持受时间缩放影响的等待
- 实现 WaitUntilOrTimeout 指令,支持带超时的条件等待
- 为所有新指令添加完整的单元测试覆盖
|
2026-02-10 23:47:40 +08:00 |
|
GeWuYou
|
c8be4b317d
|
refactor(core): 将命令和查询总线重构为执行器模式
- 将 CommandBus 重命名为 CommandExecutor 并更新相关接口
- 将 QueryBus 重命名为 QueryExecutor 并更新相关接口
- 将 AsyncQueryBus 重命名为 AsyncQueryExecutor 并更新相关接口
- 更新 ArchitectureContext 中的服务引用和错误消息
- 修改 ArchitectureServices 中的私有字段和公共属性名称
- 更新所有测试文件中的实例变量和服务引用
- 修改测试类名称以匹配新的执行器命名
- 更新状态机系统测试中的容器注册项
|
2026-02-05 12:46:44 +08:00 |
|
GeWuYou
|
7242f58029
|
refactor(coroutine): 重构 WaitForAllCoroutines 实现
- 修改 WaitForAllCoroutines 构造函数,添加 CoroutineScheduler 参数
- 移除 WaitForAllCoroutines 内部的待处理句柄集合和完成状态管理
- 修改 WaitForAllCoroutines 的 IsDone 属性实现,改为通过调度器检查协程状态
- 移除 WaitForAllCoroutines 的 NotifyCoroutineComplete 方法
- 更新 CoroutineScheduler 中对 WaitForAllCoroutines 的处理逻辑
- 移除调度器中的协程完成通知相关代码
- 更新所有相关测试用例以适应新的构造函数参数
- 添加对 scheduler 参数的空值验证测试
- [release ci]
|
2026-02-01 16:53:26 +08:00 |
|
GeWuYou
|
65fdea6c12
|
refactor(tests): 重构协程测试代码以改进类型安全性和构造函数参数
- 在CommandCoroutineExtensionsTests中使用模式匹配变量替换类型检查
- 为CoroutineSchedulerTests添加必要的依赖注入和模拟对象支持
- 移除CoroutineState枚举中的Held状态并调整相关测试断言
- 更新WaitForAllCoroutines构造函数调用以移除scheduler参数
- 修改WaitForCoroutine测试以提供必需的协程参数
- 添加WaitForEvent协程功能的完整测试实现
- 移除重复的构造函数重载测试用例
- [release ci]
|
2026-02-01 16:08:07 +08:00 |
|
GeWuYou
|
af583c101c
|
refactor(core): 重构协程扩展和函数式编程相关代码
- 优化 CommandCoroutineExtensions 中的代码格式和异常处理逻辑
- 简化 WaitForEvent 和 WaitForEventWithTimeout 中的EventData属性实现
- 调整 EventListenerScope 中的EventData属性访问器
- 重构 ControlExtensions 中 TakeIf 和 TakeUnless 方法的实现
- 优化 FunctionExtensions 中 Repeat 和 Partial 方法的代码结构
- 调整 PipeExtensions 和其他扩展类的文档注释格式
- 修改测试代码中的协程迭代和事件注册相关实现
- 优化 DataRepository 中的异步操作实现方式
= [release ci]
|
2026-02-01 14:07:59 +08:00 |
|
GeWuYou
|
085370aa27
|
test(coroutine): 添加协程扩展和助手类的单元测试
- 为 WaitForSecondsWithProgress 方法添加 null 回调参数的安全性测试
- 为 WaitForProgress 方法添加完整的功能和边界条件测试
- 为 RepeatCallForever 方法添加 shouldContinue 参数相关测试
- 为 RepeatCallForever 方法添加 CancellationToken 相关测试
- 移除未使用的 CreateCountingCoroutine 私有方法
- 使用 Assert.DoesNotThrow 确保 null 回调不会引发异常
|
2026-02-01 12:48:02 +08:00 |
|
GeWuYou
|
c50797dbe2
|
fix(coroutine): 修复协程扩展方法中的空引用和测试代码
- 为 RepeatEvery 方法的 action 参数添加可空引用支持
- 更新测试代码中集合断言的语法格式
- 移除测试方法中未使用的变量声明以简化代码
- 修复测试代码中 lambda 表达式的写法以避免不必要的变量赋值
|
2026-02-01 12:32:26 +08:00 |
|
GeWuYou
|
c7f6b3a9b2
|
test(coroutine): 添加协程组合扩展方法的单元测试
- 创建了 CoroutineComposeExtensionsTests 测试类
- 实现了 Then(Action) 方法的完整测试覆盖
- 实现了 Then(IEnumerator) 方法的完整测试覆盖
- 添加了链式调用功能的测试验证
- 包含边界条件和异常处理的测试用例
- 覆盖了空协程、延迟指令等特殊情况
- 验证了多层嵌套协程的正确执行顺序
- [release ci]
|
2026-02-01 12:28:20 +08:00 |
|
GeWuYou
|
ec8f72932b
|
test(coroutine): 添加协程相关功能的单元测试
- 添加 CommandCoroutineExtensions 的完整测试用例
- 添加 QueryCoroutineExtensions 的完整测试用例
- 添加 WaitForEvent 的完整测试用例
- 添加 WaitForEventWithTimeout 的完整测试用例
- 添加 Moq 依赖包用于模拟测试
- 实现多种协程指令和扩展方法的功能验证
- 包含超时处理、异常处理和事件触发等场景测试
- [release ci]
|
2026-02-01 11:04:50 +08:00 |
|
GeWuYou
|
b2e8ed9787
|
refactor(functional): 重构函数式编程扩展模块
- 移除 EnumerableExtensions 扩展类及其 Map、Filter、Reduce 方法
- 从 ControlExtensions 中删除 Match、MatchOrDefault、If、IfElse 等控制流方法
- 重命名 FunctionExtensions 中的 Memoize 为 MemoizeUnbounded 并更新文档注释
- 重命名 FunctionExtensions 中的 Partial 相关方法并调整参数命名
- 在 PipeExtensions 中移除 Pipe、Then、After、Let 等方法,保留 Also 方法
- 删除多个功能性类型扩展文件,包括 Option、Result、NullableExtensions 等
- 移除功能扩展的 README.md 文档文件
- 更新相关命名空间引用和依赖关系
- [release ci]
|
2026-01-31 22:31:50 +08:00 |
|
GeWuYou
|
3493d6a481
|
docs(functional): 添加函数式编程类型文档和单元测试
- 新增 Option 类型文档,包含核心类型及扩展方法说明
- 新增 Result 类型文档,包含核心类型及扩展方法说明
- 新增 Nullable Extensions 文档,提供可空类型转换功能说明
- 添加 Option 类型单元测试,覆盖基本功能和扩展方法
- 添加 Result 类型单元测试,验证成功失败结果处理
- 添加 Nullable Extensions 单元测试,确保类型转换正确性
- 添加 Option 和 Result 扩展方法的完整测试用例
- [release ci]
|
2026-01-31 21:52:04 +08:00 |
|