// Copyright 2024 Matthew Rich . All rights reserved package resource import ( _ "context" _ "encoding/json" _ "fmt" "github.com/stretchr/testify/assert" _ "gopkg.in/yaml.v3" _ "io" _ "log" _ "net/http" _ "net/http/httptest" _ "net/url" _ "os" _ "strings" "testing" "decl/internal/command" "decl/internal/folio" ) func TestNewExecResource(t *testing.T) { x := NewExec() assert.NotNil(t, x) } func TestExecApplyResourceTransformation(t *testing.T) { x := NewExec() assert.NotNil(t, x) //e := f.Apply() //assert.Equal(t, nil, e) } func TestReadExec(t *testing.T) { } func TestReadExecError(t *testing.T) { } func TestCreateExec(t *testing.T) { x := NewExec() decl := ` create: path: go args: - install - golang.org/x/vuln/cmd/govulncheck@latest ` assert.Nil(t, x.LoadDecl(decl)) assert.Equal(t, "go", x.CreateTemplate.Path) assert.Equal(t, command.CommandArg("golang.org/x/vuln/cmd/govulncheck@latest"), x.CreateTemplate.Args[1]) } func TestExecSetURI(t *testing.T) { var uri folio.URI = "exec://12345_key" x := NewExec() assert.NotNil(t, x) e := x.SetParsedURI(uri.Parse()) assert.Nil(t, e) assert.Equal(t, "exec", x.Type()) assert.Equal(t, "12345_key", x.Path) }