mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2024-11-18 16:01:05 +00:00
53 lines
1,015 B
Go
53 lines
1,015 B
Go
|
package pipeline
|
||
|
|
||
|
import (
|
||
|
"testing"
|
||
|
|
||
|
sharedPipeline "github.com/woodpecker-ci/woodpecker/pipeline"
|
||
|
"github.com/woodpecker-ci/woodpecker/pipeline/backend/types"
|
||
|
"github.com/woodpecker-ci/woodpecker/server/model"
|
||
|
)
|
||
|
|
||
|
func TestSetPipelineStepsOnPipeline(t *testing.T) {
|
||
|
t.Parallel()
|
||
|
|
||
|
pipeline := &model.Pipeline{
|
||
|
ID: 1,
|
||
|
Event: model.EventPush,
|
||
|
}
|
||
|
|
||
|
pipelineItems := []*sharedPipeline.Item{{
|
||
|
Workflow: &model.Workflow{
|
||
|
PID: 1,
|
||
|
},
|
||
|
Config: &types.Config{
|
||
|
Stages: []*types.Stage{
|
||
|
{
|
||
|
Steps: []*types.Step{
|
||
|
{
|
||
|
Name: "clone",
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
{
|
||
|
Steps: []*types.Step{
|
||
|
{
|
||
|
Name: "step",
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
}}
|
||
|
pipeline = setPipelineStepsOnPipeline(pipeline, pipelineItems)
|
||
|
if len(pipeline.Workflows) != 1 {
|
||
|
t.Fatal("Should generate three in total")
|
||
|
}
|
||
|
if pipeline.Workflows[0].PipelineID != 1 {
|
||
|
t.Fatal("Should set workflow's pipeline ID")
|
||
|
}
|
||
|
if pipeline.Workflows[0].Children[0].PPID != 1 {
|
||
|
t.Fatal("Should set step PPID")
|
||
|
}
|
||
|
}
|