@@ -15,29 +15,33 @@ import (
1515 "github.com/stretchr/testify/require"
1616)
1717
18- func load (t * testing.T , path string ) * bundle.Bundle {
18+ func load (t * testing.T , path string , mutators ... bundle. Mutator ) * bundle.Bundle {
1919 ctx := context .Background ()
2020 b , err := bundle .Load (ctx , path )
2121 require .NoError (t , err )
2222 diags := bundle .Apply (ctx , b , phases .Load ())
2323 require .NoError (t , diags .Error ())
24+ for _ , m := range mutators {
25+ diags := bundle .Apply (ctx , b , m )
26+ require .NoError (t , diags .Error ())
27+ }
2428 return b
2529}
2630
27- func loadTarget (t * testing.T , path , env string ) * bundle.Bundle {
28- b , diags := loadTargetWithDiags (path , env )
31+ func loadTarget (t * testing.T , path , env string , mutators ... bundle. Mutator ) * bundle.Bundle {
32+ b , diags := loadTargetWithDiags (path , env , mutators ... )
2933 require .NoError (t , diags .Error ())
3034 return b
3135}
3236
33- func loadTargetWithDiags (path , env string ) (* bundle.Bundle , diag.Diagnostics ) {
37+ func loadTargetWithDiags (path , env string , mutators ... bundle. Mutator ) (* bundle.Bundle , diag.Diagnostics ) {
3438 ctx := context .Background ()
3539 b , err := bundle .Load (ctx , path )
3640 if err != nil {
3741 return nil , diag .FromErr (err )
3842 }
3943
40- diags := bundle .Apply ( ctx , b , bundle . Seq (
44+ seq := [] bundle.Mutator {
4145 phases .LoadNamedTarget (env ),
4246 mutator .RewriteSyncPaths (),
4347 mutator .SyncDefaultPath (),
@@ -46,7 +50,10 @@ func loadTargetWithDiags(path, env string) (*bundle.Bundle, diag.Diagnostics) {
4650 mutator .MergeJobParameters (),
4751 mutator .MergeJobTasks (),
4852 mutator .MergePipelineClusters (),
49- ))
53+ }
54+ seq = append (seq , mutators ... )
55+ diags := bundle .Apply (ctx , b , bundle .Seq (seq ... ))
56+
5057 return b , diags
5158}
5259
0 commit comments