#
Mini Servidor de CI/CD – Parte 4: Adicionando testes ao repositório!
Finalizamos a implementação da API e a execução dos pipelines. Agora é hora de garantir que tudo isso funcione como esperado com testes automatizados. Para fazer os testes vamos instalar a go get github.com/stretchr/testify
e criar nosso arquivo: internal/api/test/handlers_test.go
Vamos iniciar criando um setup para nossos testes. Para isso vamos criar um banco em memória.
func setupTestRouter() *gin.Engine {
database, _ := gorm.Open(sqlite.Open(":memory:"), &gorm.Config{})
db.DB = database
db.DB.AutoMigrate(&models.Pipeline{}, &models.Step{}, &models.Execution{})
r := gin.Default()
api.RegisterRoutes(r)
return r
}
Primeiro vamos testar a criação de um pipeline. Devemos esperar desse request um retorno de sucesso.