kcl-lang.io/kpm@v0.8.7-0.20240520061008-9fc4c5efc8c7/pkg/runner/runner_test.go (about)

     1  package runner
     2  
     3  import (
     4  	"path/filepath"
     5  	"testing"
     6  
     7  	"github.com/stretchr/testify/assert"
     8  	"kcl-lang.io/kcl-go/pkg/kcl"
     9  )
    10  
    11  func TestKclRun(t *testing.T) {
    12  	absPath, err := filepath.Abs("./testdata_external/external/")
    13  	assert.Equal(t, err, nil)
    14  	absPath1, err := filepath.Abs("./testdata_external/external_1/")
    15  	assert.Equal(t, err, nil)
    16  	opt := kcl.WithExternalPkgs("external="+absPath, "external_1="+absPath1)
    17  	result, err := kcl.Run("./testdata/import_external.k", opt)
    18  	if err != nil {
    19  		t.Fatal(err)
    20  	}
    21  	assert.Equal(t, "{\"a\": \"Hello External World!\", \"a1\": \"Hello External_1 World!\"}", result.GetRawJsonResult())
    22  	assert.Equal(t, "a: Hello External World!\na1: Hello External_1 World!", result.GetRawYamlResult())
    23  }