Testify require and assert: Difference between revisions
Jump to navigation
Jump to search
Line 18: | Line 18: | ||
assert := testifyassert.New(t) | assert := testifyassert.New(t) | ||
assert.Equal(123, 123, "this message is displayed when the test fails %s", "because of inequality") | assert.Equal(123, 123, "this message is displayed when the test fails %s", "because of inequality") | ||
assert.NotEqual(123, | assert.NotEqual(123, 321, "this message is displayed when the test fails %s", "because of equality") | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 01:03, 12 March 2024
External
Internal
Overview
Equality and Non-Equality
In case the result is failure, Equal()
and NotEqual()
delegate to Fail()
.
package somepkg
import (
"testing"
testifyassert "github.com/stretchr/testify/assert"
)
func TestSomething(t *testing.T) {
assert := testifyassert.New(t)
assert.Equal(123, 123, "this message is displayed when the test fails %s", "because of inequality")
assert.NotEqual(123, 321, "this message is displayed when the test fails %s", "because of equality")
}
Nil and Non-Nil
Failing the Test
Failing a Test from a Goroutine
package yours
import (
"testing"
tassert "github.com/stretchr/testify/assert"
)
func TestSomething(t *testing.T) {
assert := tassert.New(t)
// assert equality
assert.Equal(123, 123, "they should be equal")
// assert inequality
assert.NotEqual(123, 456, "they should not be equal")
// assert for nil (good for errors)
assert.Nil(object)
// assert for not nil (good when you expect something)
if assert.NotNil(object) {
// now we know that object isn't nil, we are safe to make
// further assertions without causing any errors
assert.Equal("Something", object.Value)
}
}
To check that an error has the expected message:
err := ...
assert.NotNil(err)
assert.Equal(err.Error(), "expected message")