feat: improve server key validation
This commit is contained in:
parent
48b87eea81
commit
c4d8a380c3
|
@ -222,7 +222,19 @@ func (params *ListEnnoblementsParams) ServerKeys() []string {
|
|||
}
|
||||
|
||||
func (params *ListEnnoblementsParams) SetServerKeys(serverKeys []string) error {
|
||||
for i, sk := range serverKeys {
|
||||
if err := validateServerKey(sk); err != nil {
|
||||
return SliceElementValidationError{
|
||||
Model: listEnnoblementsParamsModelName,
|
||||
Field: "serverKeys",
|
||||
Index: i,
|
||||
Err: err,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
params.serverKeys = serverKeys
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -102,6 +102,60 @@ func TestEnnoblementSort_IsInConflict(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestListEnnoblementsParams_SetServerKeys(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
type args struct {
|
||||
serverKeys []string
|
||||
}
|
||||
|
||||
type test struct {
|
||||
name string
|
||||
args args
|
||||
expectedErr error
|
||||
}
|
||||
|
||||
tests := []test{
|
||||
{
|
||||
name: "OK",
|
||||
args: args{
|
||||
serverKeys: []string{
|
||||
domaintest.RandServerKey(),
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for _, serverKeyTest := range newServerKeyValidationTests() {
|
||||
tests = append(tests, test{
|
||||
name: serverKeyTest.name,
|
||||
args: args{
|
||||
serverKeys: []string{serverKeyTest.key},
|
||||
},
|
||||
expectedErr: domain.SliceElementValidationError{
|
||||
Model: "ListEnnoblementsParams",
|
||||
Field: "serverKeys",
|
||||
Index: 0,
|
||||
Err: serverKeyTest.expectedErr,
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
params := domain.NewListEnnoblementsParams()
|
||||
|
||||
require.ErrorIs(t, params.SetServerKeys(tt.args.serverKeys), tt.expectedErr)
|
||||
if tt.expectedErr != nil {
|
||||
return
|
||||
}
|
||||
assert.Equal(t, tt.args.serverKeys, params.ServerKeys())
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestListEnnoblementsParams_SetSort(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
|
|
|
@ -716,7 +716,19 @@ func (params *ListPlayersParams) ServerKeys() []string {
|
|||
}
|
||||
|
||||
func (params *ListPlayersParams) SetServerKeys(serverKeys []string) error {
|
||||
for i, sk := range serverKeys {
|
||||
if err := validateServerKey(sk); err != nil {
|
||||
return SliceElementValidationError{
|
||||
Model: listPlayersParamsModelName,
|
||||
Field: "serverKeys",
|
||||
Index: i,
|
||||
Err: err,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
params.serverKeys = serverKeys
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -255,7 +255,19 @@ func (params *ListPlayerSnapshotsParams) ServerKeys() []string {
|
|||
}
|
||||
|
||||
func (params *ListPlayerSnapshotsParams) SetServerKeys(serverKeys []string) error {
|
||||
for i, sk := range serverKeys {
|
||||
if err := validateServerKey(sk); err != nil {
|
||||
return SliceElementValidationError{
|
||||
Model: listPlayerSnapshotsParamsModelName,
|
||||
Field: "serverKeys",
|
||||
Index: i,
|
||||
Err: err,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
params.serverKeys = serverKeys
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -109,6 +109,60 @@ func TestPlayerSnapshotSort_IsInConflict(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestListPlayerSnapshotsParams_SetServerKeys(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
type args struct {
|
||||
serverKeys []string
|
||||
}
|
||||
|
||||
type test struct {
|
||||
name string
|
||||
args args
|
||||
expectedErr error
|
||||
}
|
||||
|
||||
tests := []test{
|
||||
{
|
||||
name: "OK",
|
||||
args: args{
|
||||
serverKeys: []string{
|
||||
domaintest.RandServerKey(),
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for _, serverKeyTest := range newServerKeyValidationTests() {
|
||||
tests = append(tests, test{
|
||||
name: serverKeyTest.name,
|
||||
args: args{
|
||||
serverKeys: []string{serverKeyTest.key},
|
||||
},
|
||||
expectedErr: domain.SliceElementValidationError{
|
||||
Model: "ListPlayerSnapshotsParams",
|
||||
Field: "serverKeys",
|
||||
Index: 0,
|
||||
Err: serverKeyTest.expectedErr,
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
params := domain.NewListPlayerSnapshotsParams()
|
||||
|
||||
require.ErrorIs(t, params.SetServerKeys(tt.args.serverKeys), tt.expectedErr)
|
||||
if tt.expectedErr != nil {
|
||||
return
|
||||
}
|
||||
assert.Equal(t, tt.args.serverKeys, params.ServerKeys())
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestListPlayerSnapshotsParams_SetSort(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
|
|
|
@ -567,6 +567,60 @@ func TestListPlayersParams_SetIDs(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestListPlayersParams_SetServerKeys(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
type args struct {
|
||||
serverKeys []string
|
||||
}
|
||||
|
||||
type test struct {
|
||||
name string
|
||||
args args
|
||||
expectedErr error
|
||||
}
|
||||
|
||||
tests := []test{
|
||||
{
|
||||
name: "OK",
|
||||
args: args{
|
||||
serverKeys: []string{
|
||||
domaintest.RandServerKey(),
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for _, serverKeyTest := range newServerKeyValidationTests() {
|
||||
tests = append(tests, test{
|
||||
name: serverKeyTest.name,
|
||||
args: args{
|
||||
serverKeys: []string{serverKeyTest.key},
|
||||
},
|
||||
expectedErr: domain.SliceElementValidationError{
|
||||
Model: "ListPlayersParams",
|
||||
Field: "serverKeys",
|
||||
Index: 0,
|
||||
Err: serverKeyTest.expectedErr,
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
params := domain.NewListPlayersParams()
|
||||
|
||||
require.ErrorIs(t, params.SetServerKeys(tt.args.serverKeys), tt.expectedErr)
|
||||
if tt.expectedErr != nil {
|
||||
return
|
||||
}
|
||||
assert.Equal(t, tt.args.serverKeys, params.ServerKeys())
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestListPlayersParams_SetNames(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
|
|
|
@ -269,7 +269,19 @@ func (params *ListTribeChangesParams) ServerKeys() []string {
|
|||
}
|
||||
|
||||
func (params *ListTribeChangesParams) SetServerKeys(serverKeys []string) error {
|
||||
for i, sk := range serverKeys {
|
||||
if err := validateServerKey(sk); err != nil {
|
||||
return SliceElementValidationError{
|
||||
Model: listTribeChangesParamsModelName,
|
||||
Field: "serverKeys",
|
||||
Index: i,
|
||||
Err: err,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
params.serverKeys = serverKeys
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -279,6 +279,60 @@ func TestTribeChangeSort_IsInConflict(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestListTribeChangesParams_SetServerKeys(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
type args struct {
|
||||
serverKeys []string
|
||||
}
|
||||
|
||||
type test struct {
|
||||
name string
|
||||
args args
|
||||
expectedErr error
|
||||
}
|
||||
|
||||
tests := []test{
|
||||
{
|
||||
name: "OK",
|
||||
args: args{
|
||||
serverKeys: []string{
|
||||
domaintest.RandServerKey(),
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for _, serverKeyTest := range newServerKeyValidationTests() {
|
||||
tests = append(tests, test{
|
||||
name: serverKeyTest.name,
|
||||
args: args{
|
||||
serverKeys: []string{serverKeyTest.key},
|
||||
},
|
||||
expectedErr: domain.SliceElementValidationError{
|
||||
Model: "ListTribeChangesParams",
|
||||
Field: "serverKeys",
|
||||
Index: 0,
|
||||
Err: serverKeyTest.expectedErr,
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
params := domain.NewListTribeChangesParams()
|
||||
|
||||
require.ErrorIs(t, params.SetServerKeys(tt.args.serverKeys), tt.expectedErr)
|
||||
if tt.expectedErr != nil {
|
||||
return
|
||||
}
|
||||
assert.Equal(t, tt.args.serverKeys, params.ServerKeys())
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestListTribeChangesParams_SetSort(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
|
|
|
@ -282,7 +282,19 @@ func (params *ListTribeSnapshotsParams) ServerKeys() []string {
|
|||
}
|
||||
|
||||
func (params *ListTribeSnapshotsParams) SetServerKeys(serverKeys []string) error {
|
||||
for i, sk := range serverKeys {
|
||||
if err := validateServerKey(sk); err != nil {
|
||||
return SliceElementValidationError{
|
||||
Model: listTribeSnapshotsParamsModelName,
|
||||
Field: "serverKeys",
|
||||
Index: i,
|
||||
Err: err,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
params.serverKeys = serverKeys
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -111,6 +111,60 @@ func TestTribeSnapshotSort_IsInConflict(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestListTribeSnapshotsParams_SetServerKeys(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
type args struct {
|
||||
serverKeys []string
|
||||
}
|
||||
|
||||
type test struct {
|
||||
name string
|
||||
args args
|
||||
expectedErr error
|
||||
}
|
||||
|
||||
tests := []test{
|
||||
{
|
||||
name: "OK",
|
||||
args: args{
|
||||
serverKeys: []string{
|
||||
domaintest.RandServerKey(),
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for _, serverKeyTest := range newServerKeyValidationTests() {
|
||||
tests = append(tests, test{
|
||||
name: serverKeyTest.name,
|
||||
args: args{
|
||||
serverKeys: []string{serverKeyTest.key},
|
||||
},
|
||||
expectedErr: domain.SliceElementValidationError{
|
||||
Model: "ListTribeSnapshotsParams",
|
||||
Field: "serverKeys",
|
||||
Index: 0,
|
||||
Err: serverKeyTest.expectedErr,
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
params := domain.NewListTribeSnapshotsParams()
|
||||
|
||||
require.ErrorIs(t, params.SetServerKeys(tt.args.serverKeys), tt.expectedErr)
|
||||
if tt.expectedErr != nil {
|
||||
return
|
||||
}
|
||||
assert.Equal(t, tt.args.serverKeys, params.ServerKeys())
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestListTribeSnapshotsParams_SetSort(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
|
|
|
@ -318,7 +318,19 @@ func (params *ListVillagesParams) ServerKeys() []string {
|
|||
}
|
||||
|
||||
func (params *ListVillagesParams) SetServerKeys(serverKeys []string) error {
|
||||
for i, sk := range serverKeys {
|
||||
if err := validateServerKey(sk); err != nil {
|
||||
return SliceElementValidationError{
|
||||
Model: listVillagesParamsModelName,
|
||||
Field: "serverKeys",
|
||||
Index: i,
|
||||
Err: err,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
params.serverKeys = serverKeys
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -261,6 +261,60 @@ func TestListVillagesParams_SetIDGT(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestListVillagesParams_SetServerKeys(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
type args struct {
|
||||
serverKeys []string
|
||||
}
|
||||
|
||||
type test struct {
|
||||
name string
|
||||
args args
|
||||
expectedErr error
|
||||
}
|
||||
|
||||
tests := []test{
|
||||
{
|
||||
name: "OK",
|
||||
args: args{
|
||||
serverKeys: []string{
|
||||
domaintest.RandServerKey(),
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for _, serverKeyTest := range newServerKeyValidationTests() {
|
||||
tests = append(tests, test{
|
||||
name: serverKeyTest.name,
|
||||
args: args{
|
||||
serverKeys: []string{serverKeyTest.key},
|
||||
},
|
||||
expectedErr: domain.SliceElementValidationError{
|
||||
Model: "ListVillagesParams",
|
||||
Field: "serverKeys",
|
||||
Index: 0,
|
||||
Err: serverKeyTest.expectedErr,
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
params := domain.NewListVillagesParams()
|
||||
|
||||
require.ErrorIs(t, params.SetServerKeys(tt.args.serverKeys), tt.expectedErr)
|
||||
if tt.expectedErr != nil {
|
||||
return
|
||||
}
|
||||
assert.Equal(t, tt.args.serverKeys, params.ServerKeys())
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestListVillagesParams_SetSort(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
|
|
Loading…
Reference in New Issue