Files
dance-lessons-coach/pkg/bdd/suite.go
Gabriel Radureau 5c8f42b33f
Some checks failed
CI/CD Pipeline / Build Docker Cache (push) Successful in 11s
CI/CD Pipeline / CI Pipeline (push) Failing after 4m23s
🧪 test: implement comprehensive BDD test suite for JWT secret rotation
- Added JWT secret rotation feature tests
- Implemented config management BDD steps
- Created greet service BDD scenarios
- Enhanced test server with JWT rotation support
- Added comprehensive step definitions

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-04-09 22:51:19 +02:00

42 lines
1022 B
Go

package bdd
import (
"dance-lessons-coach/pkg/bdd/steps"
"dance-lessons-coach/pkg/bdd/testserver"
"github.com/cucumber/godog"
"github.com/rs/zerolog/log"
)
var sharedServer *testserver.Server
func InitializeTestSuite(ctx *godog.TestSuiteContext) {
ctx.BeforeSuite(func() {
sharedServer = testserver.NewServer()
if err := sharedServer.Start(); err != nil {
panic(err)
}
})
ctx.AfterSuite(func() {
if sharedServer != nil {
// Cleanup database after all tests
if err := sharedServer.CleanupDatabase(); err != nil {
log.Warn().Err(err).Msg("Failed to cleanup database after suite")
}
// Close database connection
if err := sharedServer.CloseDatabase(); err != nil {
log.Warn().Err(err).Msg("Failed to close database connection")
}
sharedServer.Stop()
}
// Cleanup any test config files
steps.CleanupAllTestConfigFiles()
})
}
func InitializeScenario(ctx *godog.ScenarioContext) {
client := testserver.NewClient(sharedServer)
steps.InitializeAllSteps(ctx, client)
}