From cb3f0b182fd0bcaf4cb230e6678d1ec7c8543116 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guilherme=20Paix=C3=A3o?= Date: Fri, 17 Jan 2025 11:58:23 -0300 Subject: [PATCH] chore: improved tests --- rule/enum_test.go | 9 +++++++++ validator_test.go | 21 +++++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/rule/enum_test.go b/rule/enum_test.go index 1708206..1215346 100644 --- a/rule/enum_test.go +++ b/rule/enum_test.go @@ -51,3 +51,12 @@ func TestEnumWithInvalidParams(t *testing.T) { } } } + +func TestEnumError(t *testing.T) { + err := &ErrEnum{Field: "text", Value: "2", Enum: []string{"A", "B"}} + got := err.Error() + want := "the value 2 in field text not contains in [A B]" + if got != want { + t.Errorf(`&ErrEnum{Field: "text", Value: "2", Enum: []string{"A", "B"}}.Error(), got: %v, want: %v`, got, want) + } +} diff --git a/validator_test.go b/validator_test.go index 664cdc4..3545575 100644 --- a/validator_test.go +++ b/validator_test.go @@ -1,6 +1,7 @@ package gody import ( + "errors" "testing" "github.com/guiferpa/gody/v2/rule/ruletest" @@ -53,3 +54,23 @@ func TestDuplicatedRule(t *testing.T) { return } } + +type mock struct{} + +func (_ *mock) Name() string { + return "mock" +} + +func (r *mock) Validate(_, _, _ string) (bool, error) { + return true, errors.New("mock error") +} + +func TestDuplicatedRuleError(t *testing.T) { + r := &mock{} + err := &ErrDuplicatedRule{RuleDuplicated: r} + got := err.Error() + want := "rule mock is duplicated" + if got != want { + t.Errorf(`&ErrDuplicatedRule{RuleDuplicated: r}.Error(), got: %v, want: %v`, got, want) + } +}