mirror of
https://github.com/Buriburizaem0n/nezha_domains.git
synced 2026-09-19 09:40:12 +00:00
test(agentcompat): lock Agent stress preparation
Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba>
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
"os"
|
||||
"path/filepath"
|
||||
"regexp"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
@@ -32,7 +33,7 @@ func TestPolicy_AgentStressWorkflowRunsPinnedCrossRepositoryTest(t *testing.T) {
|
||||
require.Equal(t, "Linux agent compatibility stress", stressJob.Name)
|
||||
require.Equal(t, "ubuntu-24.04", stressJob.RunsOn)
|
||||
require.Equal(t, 75, stressJob.TimeoutMinutes)
|
||||
require.Len(t, stressJob.Steps, 6)
|
||||
require.Len(t, stressJob.Steps, 7)
|
||||
|
||||
agentCheckout := stressJob.stepNamed(t, "Checkout Agent revision")
|
||||
require.Equal(t, "actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0", agentCheckout.Uses)
|
||||
@@ -53,6 +54,16 @@ func TestPolicy_AgentStressWorkflowRunsPinnedCrossRepositoryTest(t *testing.T) {
|
||||
require.Equal(t, "^1.26.1", setupGo.With.GoVersion)
|
||||
require.False(t, *setupGo.With.Cache)
|
||||
|
||||
prepareDashboardInputs := stressJob.stepNamed(t, "Prepare Dashboard build inputs")
|
||||
require.Equal(t, "nezha", prepareDashboardInputs.WorkingDirectory)
|
||||
require.Equal(t, strings.Join([]string{
|
||||
"go install github.com/swaggo/swag/cmd/swag@v1.16.6",
|
||||
"mkdir -p cmd/dashboard/user-dist cmd/dashboard/admin-dist",
|
||||
"printf 'placeholder\\n' > cmd/dashboard/user-dist/placeholder.txt",
|
||||
"printf 'placeholder\\n' > cmd/dashboard/admin-dist/placeholder.txt",
|
||||
"swag init --pd -d cmd/dashboard -g main.go -o cmd/dashboard/docs",
|
||||
}, "\n"), strings.TrimSpace(prepareDashboardInputs.Run))
|
||||
|
||||
policyStep := stressJob.stepNamed(t, "Require Agent workflow policy tests")
|
||||
require.Equal(t, "nezha", policyStep.WorkingDirectory)
|
||||
require.Equal(t, "go test -mod=readonly -tags=agentcompat -list '^TestPolicy_AgentQualityWorkflow$' ./integration/agentcompat/internal/workflowpolicy | grep -Fx 'TestPolicy_AgentQualityWorkflow'\ngo test -mod=readonly -tags=agentcompat -list '^TestPolicy_AgentStressWorkflowRunsPinnedCrossRepositoryTest$' ./integration/agentcompat/internal/workflowpolicy | grep -Fx 'TestPolicy_AgentStressWorkflowRunsPinnedCrossRepositoryTest'\ngo test -mod=readonly -tags=agentcompat -run '^(TestPolicy_AgentQualityWorkflow|TestPolicy_AgentStressWorkflowRunsPinnedCrossRepositoryTest)$' -count=1 ./integration/agentcompat/internal/workflowpolicy\n", policyStep.Run)
|
||||
@@ -66,4 +77,22 @@ func TestPolicy_AgentStressWorkflowRunsPinnedCrossRepositoryTest(t *testing.T) {
|
||||
require.Equal(t, "${{ github.workspace }}/nezha", runStep.Env.AgentcompatNezhaSource)
|
||||
require.Equal(t, "${{ github.workspace }}/agent", runStep.Env.AgentcompatAgentSource)
|
||||
require.Equal(t, "go test -mod=readonly -tags=agentcompat -run '^"+agentWorkflowStressTestName+"$' -count=1 -v ./integration/agentcompat/internal/scenario", runStep.Run)
|
||||
|
||||
require.Equal(t, []string{
|
||||
"Checkout Agent revision",
|
||||
"Checkout pinned Nezha revision",
|
||||
"Set up Go",
|
||||
"Prepare Dashboard build inputs",
|
||||
"Require Agent workflow policy tests",
|
||||
"Require named stress test",
|
||||
"Run PR-full agent compatibility stress",
|
||||
}, stepNames(stressJob.Steps))
|
||||
}
|
||||
|
||||
func stepNames(steps []qualityStep) []string {
|
||||
names := make([]string, len(steps))
|
||||
for index, step := range steps {
|
||||
names[index] = step.Name
|
||||
}
|
||||
return names
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user