Add red test for EXT-19 account lister surface

Why: 方案 r1 U3/KTD2——最小账号目录(owner+有效态+分页)是 RDM 成员管理的公开前置。
Evidence: go vet 编译红(AccountLister/AccountEntry/SurfaceVersion 2.11.0 未定义)。
Impact: 仅测试。
Refs: 方案 r1 U3/KTD2;Dev#477 identity CLI
This commit is contained in:
weichen
2026-10-12 13:43:24 +00:00
parent acabb85e2a
commit f718d36d23
+26
View File
@@ -0,0 +1,26 @@
package extension
// EXT-19 红测(方案 r1 U3/KTD2 最小账号目录):公开面新增可选能力接口
// AccountLister(ListAccounts:owner+有效态+游标分页——授权管理所需的最小身份,
// 不含姓名/邮箱/联系方式)。红:类型未定义,编译红先行。
import (
"encoding/json"
"strings"
"testing"
)
func TestAccountListerSurface(t *testing.T) {
if !strings.HasPrefix(SurfaceVersion, "2.11.0") {
t.Fatalf("SurfaceVersion 应升至 2.11.0-experimental(新增导出符号须升版),got %s", SurfaceVersion)
}
// 接口方法签名即契约:游标分页 + 最小字段。
var _ AccountLister = (AccountLister)(nil)
e := AccountEntry{Owner: "u1", Valid: true}
b, err := json.Marshal(e)
if err != nil {
t.Fatal(err)
}
if !strings.Contains(string(b), `"owner":"u1"`) || !strings.Contains(string(b), `"valid":true`) {
t.Fatalf("AccountEntry 序列化不符(最小字段 owner/valid): %s", b)
}
}