diff --git a/pkg/extension/account_lister_test.go b/pkg/extension/account_lister_test.go new file mode 100644 index 0000000..d448879 --- /dev/null +++ b/pkg/extension/account_lister_test.go @@ -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) + } +}