testifylisted
Install: claude install-skill majiayu000/claude-skill-registry-data
# Testify Standards
## Assert Package
```go
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestSomething(t *testing.T) {
// Equality
assert.Equal(t, 123, result)
assert.NotEqual(t, 456, result)
// Boolean
assert.True(t, ok)
assert.False(t, failed)
// Nil checks
assert.Nil(t, err)
assert.NotNil(t, obj)
// Error checks
assert.NoError(t, err)
assert.Error(t, err)
assert.ErrorIs(t, err, ErrNotFound)
assert.ErrorContains(t, err, "not found")
// Collections
assert.Contains(t, slice, item)
assert.Len(t, slice, 3)
assert.Empty(t, slice)
assert.NotEmpty(t, slice)
assert.ElementsMatch(t, expected, actual) // Order independent
// Comparison
assert.Greater(t, 2, 1)
assert.GreaterOrEqual(t, 2, 2)
assert.Less(t, 1, 2)
// Type assertions
assert.IsType(t, &User{}, obj)
assert.Implements(t, (*io.Reader)(nil), obj)
// With message
assert.Equal(t, expected, actual, "values should match")
}
```
## Require Package
```go
import "github.com/stretchr/testify/require"
func TestWithRequire(t *testing.T) {
// Stops test immediately on failure
user, err := GetUser(1)
require.NoError(t, err) // Fails here stops test
require.NotNil(t, user)
// Continue knowing user is valid
assert.Equal(t, "John", user.Name)
}
```
## Mock Package
```go
import (
"testing"
"github.com/stretchr/testify/mock"
)
// Interface to mock
t