mirror of
https://github.com/pocketbase/pocketbase.git
synced 2026-10-22 05:54:06 +02:00
added topic length validator to avoid relying solely on the body limit for more user friendly error message
This commit is contained in:
1 parent
cd14714cf3
commit
caaac6b145
3 files changed
+23
-3
No files matched your search
@@ -19,6 +19,9 @@ func NewRealtimeSubscribe() *RealtimeSubscribe {
|
||||
func (form *RealtimeSubscribe) Validate() error {
|
||||
return validation.ValidateStruct(form,
|
||||
validation.Field(&form.ClientId, validation.Required, validation.Length(1, 255)),
|
||||
validation.Field(&form.Subscriptions, validation.Length(0, 1000)),
|
||||
validation.Field(&form.Subscriptions,
|
||||
validation.Length(0, 1000),
|
||||
validation.Each(validation.Length(0, 2500)),
|
||||
),
|
||||
)
|
||||
}
|
||||
@@ -43,15 +43,25 @@ func TestRealtimeSubscribeValidate(t *testing.T) {
|
||||
[]string{},
|
||||
},
|
||||
{
|
||||
"subscriptions > max limit",
|
||||
"total subscriptions > max limit",
|
||||
`{"clientId":"test", "subscriptions":[` + strings.Join(invalidSubscriptionsLimit, ",") + `]}`,
|
||||
[]string{"subscriptions"},
|
||||
},
|
||||
{
|
||||
"subscriptions <= max limit",
|
||||
"total subscriptions <= max limit",
|
||||
`{"clientId":"test", "subscriptions":[` + strings.Join(validSubscriptionsLimit, ",") + `]}`,
|
||||
[]string{},
|
||||
},
|
||||
{
|
||||
"single subscription > max limit",
|
||||
`{"clientId":"test", "subscriptions":["abc", "` + strings.Repeat("a", 2501) + `"]}`,
|
||||
[]string{"subscriptions"},
|
||||
},
|
||||
{
|
||||
"single subscription <= max limit",
|
||||
`{"clientId":"test", "subscriptions":["abc", "` + strings.Repeat("a", 2500) + `"]}`,
|
||||
[]string{},
|
||||
},
|
||||
}
|
||||
|
||||
for _, s := range scenarios {
|
||||
|
||||
Reference in new issue
Block a user