Testes
O pacote pkg/base/test configura o ambiente do SDK e fornece containers para dependências externas.
Inicialização básica
package users_test
import (
"os"
"testing"
colibriTest "github.com/colibriproject-dev/colibri-sdk-go/pkg/base/test"
)
func TestMain(m *testing.M) {
colibriTest.InitializeBaseTest()
os.Exit(m.Run())
}
InitializeBaseTest() configura:
ENVIRONMENT=test
APP_NAME=colibri-project-test
APP_TYPE=service
CLOUD=aws
Dependências disponíveis
| Helper | Dependência |
|---|---|
InitializeCacheDBTest() | Redis |
InitializeSqlDBTest() | PostgreSQL |
InitializeTestLocalstack() | LocalStack |
InitializeGcpEmulator() | Emuladores GCP |
InitializeRabbitmq() | RabbitMQ |
UseWiremockContainer() | WireMock |
Esses helpers usam Testcontainers e, portanto, exigem um runtime Docker disponível.
dica
Para testes unitários, prefira substituir repositórios e clientes por implementações locais. Use containers apenas quando o comportamento do provedor fizer parte do que está sendo validado.
Veja testes completos no school-module.