feat(shop-role): 实现店铺角色继承功能和权限检查优化
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 6m39s
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 6m39s
- 新增店铺角色管理 API 和数据模型 - 实现角色继承和权限检查逻辑 - 添加流程测试框架和集成测试 - 更新权限服务和账号管理逻辑 - 添加数据库迁移脚本 - 归档 OpenSpec 变更文档 Ultraworked with Sisyphus
This commit is contained in:
92
scripts/fix_test_constructors.py
Normal file
92
scripts/fix_test_constructors.py
Normal file
@@ -0,0 +1,92 @@
|
||||
#!/usr/bin/env python3
|
||||
"""修复测试文件中的构造函数调用"""
|
||||
|
||||
import re
|
||||
|
||||
# 修复 account_role_test.go
|
||||
with open('tests/integration/account_role_test.go', 'r') as f:
|
||||
content = f.read()
|
||||
|
||||
# 添加 shopRoleStore 初始化
|
||||
content = re.sub(
|
||||
r'(\tenpriseStore := postgresStore\.NewEnterpriseStore\(env\.TX, env\.Redis\)\n)',
|
||||
r'\1\tshopRoleStore := postgresStore.NewShopRoleStore(env.TX, env.Redis)\n',
|
||||
content
|
||||
)
|
||||
|
||||
# 修复 accountService.New 调用
|
||||
content = re.sub(
|
||||
r'accountService\.New\(accountStore, roleStore, accountRoleStore, shopStore, enterpriseStore, auditService\)',
|
||||
'accountService.New(accountStore, roleStore, accountRoleStore, shopRoleStore, shopStore, enterpriseStore, auditService)',
|
||||
content
|
||||
)
|
||||
|
||||
with open('tests/integration/account_role_test.go', 'w') as f:
|
||||
f.write(content)
|
||||
|
||||
print("Fixed account_role_test.go")
|
||||
|
||||
# 修复 role_assignment_limit_test.go
|
||||
with open('tests/unit/role_assignment_limit_test.go', 'r') as f:
|
||||
content = f.read()
|
||||
|
||||
# 添加 shopRoleStore 初始化
|
||||
content = re.sub(
|
||||
r'(\tenpriseStore := postgres\.NewEnterpriseStore\(tx, rdb\)\n)',
|
||||
r'\1\tshopRoleStore := postgres.NewShopRoleStore(tx, rdb)\n',
|
||||
content,
|
||||
count=1 # 只替换第一个
|
||||
)
|
||||
|
||||
# 修复 account.New 调用
|
||||
content = re.sub(
|
||||
r'account\.New\(accountStore, roleStore, accountRoleStore, shopStore, enterpriseStore, auditService\)',
|
||||
'account.New(accountStore, roleStore, accountRoleStore, shopRoleStore, shopStore, enterpriseStore, auditService)',
|
||||
content
|
||||
)
|
||||
|
||||
with open('tests/unit/role_assignment_limit_test.go', 'w') as f:
|
||||
f.write(content)
|
||||
|
||||
print("Fixed role_assignment_limit_test.go")
|
||||
|
||||
# 修复 permission_platform_filter_test.go
|
||||
with open('tests/unit/permission_platform_filter_test.go', 'r') as f:
|
||||
content = f.read()
|
||||
|
||||
# 修复 permission.New 调用 - 需要添加 nil 作为第4个参数 (accountService)
|
||||
content = re.sub(
|
||||
r'permission\.New\(permissionStore, accountRoleStore, rolePermStore, rdb\)',
|
||||
'permission.New(permissionStore, accountRoleStore, rolePermStore, nil, rdb)',
|
||||
content
|
||||
)
|
||||
|
||||
with open('tests/unit/permission_platform_filter_test.go', 'w') as f:
|
||||
f.write(content)
|
||||
|
||||
print("Fixed permission_platform_filter_test.go")
|
||||
|
||||
# 修复 account_audit_test.go
|
||||
with open('tests/integration/account_audit_test.go', 'r') as f:
|
||||
content = f.read()
|
||||
|
||||
# 添加 shopRoleStore 初始化
|
||||
content = re.sub(
|
||||
r'(\t\tenpriseStore := postgres\.NewEnterpriseStore\(env\.TX, env\.Redis\)\n)',
|
||||
r'\1\t\tshopRoleStore := postgres.NewShopRoleStore(env.TX, env.Redis)\n',
|
||||
content
|
||||
)
|
||||
|
||||
# 修复 accountSvc.New 调用
|
||||
content = re.sub(
|
||||
r'accountSvc\.New\(accountStore, roleStore, accountRoleStore, shopStore, enterpriseStore, auditService\)',
|
||||
'accountSvc.New(accountStore, roleStore, accountRoleStore, shopRoleStore, shopStore, enterpriseStore, auditService)',
|
||||
content
|
||||
)
|
||||
|
||||
with open('tests/integration/account_audit_test.go', 'w') as f:
|
||||
f.write(content)
|
||||
|
||||
print("Fixed account_audit_test.go")
|
||||
|
||||
print("\n所有文件修复完成!")
|
||||
Reference in New Issue
Block a user