# generated from the original tests.
# Henceforth it may be nicer to group tests into separate files.
-- in.cue --
import "encoding/yaml"

t1: yaml.Validate("a: 2\n---\na: 4", {a:<3})
t2: yaml.Validate("a: 2\n---\na: 4", {a:<5})
t3: yaml.Validate("a: 2\n", {a:<5, b:int})
t4: yaml.ValidatePartial("a: 2\n---\na: 4", {a:<3})
t5: yaml.ValidatePartial("a: 2\n---\na: 4", {a:<5})
t6: yaml.ValidatePartial("a: 2\n", {a:<5, b:int})
t7: yaml.MarshalStream([{a: 1}, {b: 2}])
t8: yaml.Marshal({b: int | *2})
t9: yaml.MarshalStream([{a: 1}, {b: int | *2}])
-- out/yaml --
Errors:
a: error in call to encoding/yaml.Validate: invalid value 4 (out of bound <3)
a: error in call to encoding/yaml.ValidatePartial: invalid value 4 (out of bound <3)
b: error in call to encoding/yaml.Validate: incomplete value int

Result:
(_|_){
  // [eval]
  t1: (_|_){
    // [eval] a: error in call to encoding/yaml.Validate: invalid value 4 (out of bound <3)
  }
  t2: (bool){ true }
  t3: (_|_){
    // [eval] b: error in call to encoding/yaml.Validate: incomplete value int
  }
  t4: (_|_){
    // [eval] a: error in call to encoding/yaml.ValidatePartial: invalid value 4 (out of bound <3)
  }
  t5: (bool){ true }
  t6: (bool){ true }
  t7: (string){ "a: 1\n---\nb: 2\n" }
  t8: (string){ "b: 2\n" }
  t9: (string){ "a: 1\n---\nb: 2\n" }
}
