MCPcopy
hub / github.com/pocketbase/pocketbase / TestPasswordFieldValidateValue

Function TestPasswordFieldValidateValue

core/field_password_test.go:121–285  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

119}
120
121func TestPasswordFieldValidateValue(t *testing.T) {
122 app, _ := tests.NewTestApp()
123 defer app.Cleanup()
124
125 collection := core.NewBaseCollection("test_collection")
126
127 scenarios := []struct {
128 name string
129 field *core.PasswordField
130 record func() *core.Record
131 expectError bool
132 }{
133 {
134 "invalid raw value",
135 &core.PasswordField{Name: "test"},
136 func() *core.Record {
137 record := core.NewRecord(collection)
138 record.SetRaw("test", "123")
139 return record
140 },
141 true,
142 },
143 {
144 "zero field value (not required)",
145 &core.PasswordField{Name: "test"},
146 func() *core.Record {
147 record := core.NewRecord(collection)
148 record.SetRaw("test", &core.PasswordFieldValue{})
149 return record
150 },
151 false,
152 },
153 {
154 "zero field value (required)",
155 &core.PasswordField{Name: "test", Required: true},
156 func() *core.Record {
157 record := core.NewRecord(collection)
158 record.SetRaw("test", &core.PasswordFieldValue{})
159 return record
160 },
161 true,
162 },
163 {
164 "empty hash but non-empty plain password (required)",
165 &core.PasswordField{Name: "test", Required: true},
166 func() *core.Record {
167 record := core.NewRecord(collection)
168 record.SetRaw("test", &core.PasswordFieldValue{Plain: "test"})
169 return record
170 },
171 true,
172 },
173 {
174 "non-empty hash (required)",
175 &core.PasswordField{Name: "test", Required: true},
176 func() *core.Record {
177 record := core.NewRecord(collection)
178 record.SetRaw("test", &core.PasswordFieldValue{Hash: "test"})

Callers

nothing calls this directly

Calls 7

CleanupMethod · 0.95
SetRawMethod · 0.95
NewTestAppFunction · 0.92
NewBaseCollectionFunction · 0.92
NewRecordFunction · 0.92
ValidateValueMethod · 0.65
RunMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…