func/pkg/pipelines/tekton/pipelines_pac_provider_test.go

98 lines
2.1 KiB
Go

package tekton
import (
"context"
"path/filepath"
"testing"
"knative.dev/func/pkg/builders"
fn "knative.dev/func/pkg/functions"
. "knative.dev/func/pkg/testing"
)
func Test_createLocalResources(t *testing.T) {
tests := []struct {
name string
root string
builder string
wantErr bool
}{
{
name: "correct - pack builder",
root: "testdata/testCreateLocalResourcesPack",
builder: builders.Pack,
wantErr: false,
},
{
name: "correct - s2i builder",
root: "testdata/testCreateLocalResourcesS2I",
builder: builders.S2I,
wantErr: false,
},
{
name: "incorrect - foo builder",
root: "testdata/testCreateLocalResourcesFoo",
builder: "foo",
wantErr: true,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
root := tt.root
defer Using(t, root)()
f, err := fn.NewFunction(root)
if err != nil {
t.Fatal(err)
}
f.Build.Builder = tt.builder
f.Image = "docker.io/alice/" + f.Name
f.Registry = TestRegistry
pp := NewPipelinesProvider()
err = pp.createLocalPACResources(context.Background(), f)
if (err != nil) != tt.wantErr {
t.Errorf("pp.createLocalResources() error = %v, wantErr %v", err, tt.wantErr)
return
}
})
}
}
func Test_deleteAllPipelineTemplates(t *testing.T) {
root := "testdata/deleteAllPipelineTemplates"
defer Using(t, root)()
f, err := fn.NewFunction(root)
if err != nil {
t.Fatal(err)
}
f.Build.Builder = builders.Pack
f.Build.Git.URL = "https://foo.bar/repo/function"
f.Image = "docker.io/alice/" + f.Name
f.Registry = TestRegistry
pp := NewPipelinesProvider()
err = pp.createLocalPACResources(context.Background(), f)
if err != nil {
t.Errorf("unexpected error while running pp.createLocalResources() error = %v", err)
}
errMsg := deleteAllPipelineTemplates(f)
if errMsg != "" {
t.Errorf("unexpected error while running deleteAllPipelineTemplates() error message = %s", errMsg)
}
fp := filepath.Join(root, resourcesDirectory)
exists, err := FileExists(t, fp)
if err != nil {
t.Fatal(err)
}
if exists {
t.Errorf("directory with pipeline resources shouldn't exist on path = %s", fp)
}
}