schema/field: support for sensitive json fields (#2701)

Closed https://github.com/ent/ent/issues/2596
This commit is contained in:
Ariel Mashraki
2022-06-29 11:27:10 +03:00
committed by GitHub
parent 5dbfa24b46
commit 6793d74da7
5 changed files with 17 additions and 3 deletions

View File

@@ -716,6 +716,12 @@ func (b *jsonBuilder) Comment(c string) *jsonBuilder {
return b
}
// Sensitive fields not printable and not serializable.
func (b *jsonBuilder) Sensitive() *jsonBuilder {
b.desc.Sensitive = true
return b
}
// StructTag sets the struct tag of the field.
func (b *jsonBuilder) StructTag(s string) *jsonBuilder {
b.desc.Tag = s

View File

@@ -474,9 +474,11 @@ func TestJSON(t *testing.T) {
fd = field.Strings("strings").
Optional().
Default([]string{"a", "b"}).
Sensitive().
Descriptor()
assert.NoError(t, fd.Err)
assert.True(t, fd.Optional)
assert.True(t, fd.Sensitive)
assert.Empty(t, fd.Info.PkgPath)
assert.Equal(t, "strings", fd.Name)
assert.Equal(t, []string{"a", "b"}, fd.Default)