diff --git a/internal/saucecloud/cucumber.go b/internal/saucecloud/cucumber.go index 81b381080..bb39a30f3 100644 --- a/internal/saucecloud/cucumber.go +++ b/internal/saucecloud/cucumber.go @@ -68,7 +68,11 @@ func (r *CucumberRunner) RunProject() (int, error) { // The framework version might be set to `package.json`. func (r *CucumberRunner) setVersions(m framework.Metadata) { r.Project.Playwright.Version = m.FrameworkVersion - r.Project.RunnerVersion = m.CloudRunnerVersion + // RunnerVersion can be set via `--runner-version`. + // If not provided, it uses the fetched framework runner version. + if r.Project.RunnerVersion == "" { + r.Project.RunnerVersion = m.CloudRunnerVersion + } } func (r *CucumberRunner) validateFramework(m framework.Metadata) error { diff --git a/internal/saucecloud/cypress.go b/internal/saucecloud/cypress.go index de95f3509..88a292ada 100644 --- a/internal/saucecloud/cypress.go +++ b/internal/saucecloud/cypress.go @@ -100,7 +100,11 @@ func (r *CypressRunner) setNodeRuntime(m framework.Metadata) error { // The framework version might be set to `package.json`. func (r *CypressRunner) setVersions(m framework.Metadata) { r.Project.SetVersion(m.FrameworkVersion) - r.Project.SetRunnerVersion(m.CloudRunnerVersion) + // RunnerVersion can be set via `--runner-version`. + // If not provided, it uses the fetched framework runner version. + if r.Project.GetRunnerVersion() == "" { + r.Project.SetRunnerVersion(m.CloudRunnerVersion) + } } func (r *CypressRunner) validateFramework(m framework.Metadata) error { diff --git a/internal/saucecloud/playwright.go b/internal/saucecloud/playwright.go index efa93b9d7..f24ab2c7d 100644 --- a/internal/saucecloud/playwright.go +++ b/internal/saucecloud/playwright.go @@ -105,7 +105,11 @@ func (r *PlaywrightRunner) setNodeRuntime(m framework.Metadata) error { // The framework version might be set to `package.json`. func (r *PlaywrightRunner) setVersions(m framework.Metadata) { r.Project.Playwright.Version = m.FrameworkVersion - r.Project.RunnerVersion = m.CloudRunnerVersion + // RunnerVersion can be set via `--runner-version`. + // If not provided, it uses the fetched framework runner version. + if r.Project.RunnerVersion == "" { + r.Project.RunnerVersion = m.CloudRunnerVersion + } } func (r *PlaywrightRunner) validateFramework(m framework.Metadata) error { diff --git a/internal/saucecloud/testcafe.go b/internal/saucecloud/testcafe.go index ed56ed570..6b9c6e613 100644 --- a/internal/saucecloud/testcafe.go +++ b/internal/saucecloud/testcafe.go @@ -100,7 +100,11 @@ func (r *TestcafeRunner) setNodeRuntime(m framework.Metadata) error { // The framework version might be set to `package.json`. func (r *TestcafeRunner) setVersions(m framework.Metadata) { r.Project.Testcafe.Version = m.FrameworkVersion - r.Project.RunnerVersion = m.CloudRunnerVersion + // RunnerVersion can be set via `--runner-version`. + // If not provided, it uses the fetched framework runner version. + if r.Project.RunnerVersion == "" { + r.Project.RunnerVersion = m.CloudRunnerVersion + } } func (r *TestcafeRunner) validateFramework(m framework.Metadata) error {