test: add integration tests

This commit is contained in:
Julien Neuhart
2025-03-21 11:18:20 +01:00
parent 820b914291
commit 0febb60a3f
139 changed files with 7561 additions and 16381 deletions

View File

@@ -0,0 +1,50 @@
//go:build integration
package integration
import (
"os"
"runtime"
"testing"
"github.com/cucumber/godog"
"github.com/cucumber/godog/colors"
flag "github.com/spf13/pflag"
"github.com/gotenberg/gotenberg/v8/test/integration/scenario"
)
var opts = godog.Options{
Format: "pretty",
Paths: []string{"features"},
Output: colors.Colored(os.Stdout),
Concurrency: runtime.NumCPU(),
}
func TestMain(m *testing.M) {
repository := flag.String("gotenberg-docker-repository", "", "")
version := flag.String("gotenberg-version", "", "")
platform := flag.String("gotenberg-container-platform", "", "")
flag.Parse()
if *platform == "" {
switch runtime.GOARCH {
case "arm64":
*platform = "linux/arm64"
default:
*platform = "linux/amd64"
}
}
scenario.GotenbergDockerRepository = *repository
scenario.GotenbergVersion = *version
scenario.GotenbergContainerPlatform = *platform
code := godog.TestSuite{
Name: "integration",
ScenarioInitializer: scenario.InitializeScenario,
Options: &opts,
}.Run()
os.Exit(code)
}