chore(domain): Assert errors using ErrorIS for instance and organization tests (#11789)

# Which Problems Are Solved

This is a small refactoring for tests in `backend/v3/domain` package to
use `assert.ErrorIs` instead of `assert.Equal` for error assertion.

# How the Problems Are Solved

  - Add custom `Is()` function to `MultipleObjectsUpdatedError` error
- Substitute `assert.Equal` with `assert.ErrorIs` in instance and
organization tests

# Additional Context

This was part of #11035
This commit is contained in:
Marco A.
2026-03-06 19:20:54 +01:00
committed by GitHub
parent 247e278505
commit 2793abf1e3
15 changed files with 31 additions and 26 deletions
+1 -1
View File
@@ -70,7 +70,7 @@ func TestTextQueryMethodToTextOperation(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
got, err := TextQueryMethodToTextOperation(tc.queryOperation)
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
assert.Equal(t, tc.expectedOperation, got)
})
}
+5
View File
@@ -42,6 +42,11 @@ func (err *MultipleObjectsUpdatedError) Error() string {
return fmt.Sprintf("Message=expecting %d row(s) updated, got %d", err.Expected, err.Actual)
}
func (err *MultipleObjectsUpdatedError) Is(target error) bool {
_, ok := target.(*MultipleObjectsUpdatedError)
return ok
}
type UnexpectedQueryTypeError[T any] struct {
assertedType T
}
+2 -2
View File
@@ -86,7 +86,7 @@ func TestDeleteInstanceCommand_Validate(t *testing.T) {
err := d.Validate(context.Background(), cmdOpts)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}
@@ -397,7 +397,7 @@ func TestDeleteInstanceCommand_Execute(t *testing.T) {
err := d.Execute(ctx, opts)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
assert.Equal(t, tc.expectedInstanceName, d.InstanceName)
assert.ElementsMatch(t, tc.expectedInstanceDomains, d.InstanceDomains)
assert.Equal(t, tc.expectsDeleteTime, d.DeleteTime != nil && !d.DeleteTime.IsZero())
@@ -184,7 +184,7 @@ func TestAddInstanceDomainCommand_Validate(t *testing.T) {
}
err := cmd.Validate(ctx, opts)
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}
@@ -310,7 +310,7 @@ func TestAddInstanceDomainCommand_Execute(t *testing.T) {
err := cmd.Execute(ctx, opts)
// Then
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}
@@ -121,7 +121,7 @@ func TestListInstanceDomainsQuery_Validate(t *testing.T) {
if tc.expectedError != nil {
assert.Error(t, err)
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
} else {
assert.NoError(t, err)
}
@@ -261,7 +261,7 @@ func TestListInstanceDomainsQuery_Execute(t *testing.T) {
if tc.expectedError != nil {
assert.Error(t, err)
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
} else {
assert.NoError(t, err)
assert.Equal(t, tc.expectedDomains, query.Result())
@@ -214,7 +214,7 @@ func TestRemoveInstanceDomainCommand_Validate(t *testing.T) {
}
err := cmd.Validate(ctx, opts)
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}
@@ -374,7 +374,7 @@ func TestRemoveInstanceDomainCommand_Execute(t *testing.T) {
}
err := cmd.Execute(ctx, opts)
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
assert.Equal(t, tc.expectsDeleteTime, cmd.DeleteTime != nil && !cmd.DeleteTime.IsZero())
})
}
+2 -2
View File
@@ -97,7 +97,7 @@ func TestGetInstanceCommand_Validate(t *testing.T) {
err := cmd.Validate(tt.ctx, cmdOpts)
// Verify
assert.Equal(t, tt.expectedError, err)
assert.ErrorIs(t, err, tt.expectedError)
})
}
}
@@ -232,7 +232,7 @@ func TestGetInstanceCommand_Execute(t *testing.T) {
err := g.Execute(ctx, opts)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
assert.Equal(t, tc.expectedInstance, g.Result())
})
}
+2 -2
View File
@@ -261,7 +261,7 @@ func TestListInstancesCommand_Execute(t *testing.T) {
err := cmd.Execute(ctx, opts)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
assert.ElementsMatch(t, tc.expectedInstances, cmd.Result())
})
@@ -321,7 +321,7 @@ func TestListInstancesCommand_Validate(t *testing.T) {
err := l.Validate(context.Background(), cmdOpts)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
@@ -121,7 +121,7 @@ func TestListInstanceTrustedDomainsQuery_Validate(t *testing.T) {
if tc.expectedError != nil {
assert.Error(t, err)
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
} else {
assert.NoError(t, err)
}
@@ -253,7 +253,7 @@ func TestListInstanceTrustedDomainsQuery_Execute(t *testing.T) {
if tc.expectedError != nil {
assert.Error(t, err)
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
} else {
assert.NoError(t, err)
assert.Equal(t, tc.expectedDomains, query.Result())
+2 -2
View File
@@ -168,7 +168,7 @@ func TestUpdateInstanceCommand_Validate(t *testing.T) {
}
err := cmd.Validate(ctx, opts)
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
assert.Equal(t, tc.expectedUpdateSkip, cmd.ShouldSkipUpdate)
})
}
@@ -285,7 +285,7 @@ func TestUpdateInstanceCommand_Execute(t *testing.T) {
err := cmd.Execute(ctx, opts)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}
+2 -2
View File
@@ -144,7 +144,7 @@ func TestActivateOrgCommand_Validate(t *testing.T) {
err := cmd.Validate(ctx, opts)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}
@@ -264,7 +264,7 @@ func TestActivateOrgCommand_Execute(t *testing.T) {
err := opts.Invoke(ctx, cmd)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}
+2 -2
View File
@@ -124,7 +124,7 @@ func TestDeactivateOrgCommand_Validate(t *testing.T) {
err := cmd.Validate(ctx, opts)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}
@@ -228,7 +228,7 @@ func TestDeactivateOrgCommand_Execute(t *testing.T) {
err := opts.Invoke(ctx, cmd)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}
+2 -2
View File
@@ -196,7 +196,7 @@ func TestDeleteOrgCommand_Validate(t *testing.T) {
err := d.Validate(ctx, opts)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}
@@ -396,7 +396,7 @@ func TestDeleteOrgCommand_Execute(t *testing.T) {
err := opts.Invoke(ctx, cmd)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
assert.Equal(t, tc.expectedOrgName, cmd.OrganizationName)
})
}
+1 -1
View File
@@ -329,7 +329,7 @@ func TestListOrgsCommand_Execute(t *testing.T) {
err := opts.Invoke(ctx, cmd)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
assert.ElementsMatch(t, tc.expectedOrganizations, cmd.Result())
})
}
+2 -2
View File
@@ -281,7 +281,7 @@ func TestUpdateOrgCommand_Execute(t *testing.T) {
err := opts.Invoke(ctx, cmd)
// Verify
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
assert.Equal(t, tc.expectedOldDomainName, cmd.OldDomainName)
assert.Equal(t, tc.expectedDomainVerified, cmd.IsOldDomainVerified)
})
@@ -389,7 +389,7 @@ func TestUpdateOrgCommand_Validate(t *testing.T) {
}
err := cmd.Validate(ctx, opts)
assert.Equal(t, tc.expectedError, err)
assert.ErrorIs(t, err, tc.expectedError)
})
}
}