猿问

如何在cuelang中使用yaml.Validate进行yaml验证?

/cuelang.org/go/yaml.go

func Validate(b []byte, v cue.Value) error {

   _, err := pkgyaml.Validate(b, v)

   return err

}

没有任何示例代码告诉我如何使用此 API,我需要一些示例来了解如何使用它。


湖上湖
浏览 124回答 1
1回答

哈士奇WWW

我想到了。首先我们需要一个提示文件:// demo.cuemin: numbermax: number & >min接着:// valid_test.gopackage demoimport (    "cuelang.org/go/cue/cuecontext"    "cuelang.org/go/encoding/yaml"    "fmt"    "io/ioutil"    "strings"    "testing")const Yaml = `min: 10max: 5`func TestValidate(t *testing.T) {    r := strings.NewReader(Yaml)    b, _ := ioutil.ReadAll(r)    cue, _ := ioutil.ReadFile("demo.cue")    // Cue API for Go    c := cuecontext.New()    v := c.CompileBytes(cue)    err := yaml.Validate(b, v)    fmt.Println(err) // max: invalid value 5 (out of bound >10)}
随时随地看视频慕课网APP

相关分类

Go
我要回答