boon test suite itself passing
This commit is contained in:
@ -10,7 +10,7 @@ let mut schemas = Schemas::new(); // container for compiled schemas
|
||||
let mut compiler = Compiler::new();
|
||||
let sch_index = compiler.compile("schema.json", &mut schemas)?;
|
||||
let instance: Value = serde_json::from_reader(File::open("instance.json")?)?;
|
||||
let valid = schemas.validate(&instance, sch_index).is_ok();
|
||||
let valid = schemas.validate(&instance, sch_index, None).is_ok();
|
||||
# Ok(())
|
||||
# }
|
||||
```
|
||||
|
||||
@ -15,7 +15,7 @@ fn test_debug() -> Result<(), Box<dyn Error>> {
|
||||
let url = "http://debug.com/schema.json";
|
||||
compiler.add_resource(url, test["schema"].clone())?;
|
||||
let sch = compiler.compile(url, &mut schemas)?;
|
||||
let result = schemas.validate(&test["data"], sch);
|
||||
let result = schemas.validate(&test["data"], sch, None);
|
||||
if let Err(e) = &result {
|
||||
for line in format!("{e}").lines() {
|
||||
println!(" {line}");
|
||||
|
||||
@ -13,7 +13,7 @@ fn example_from_files() -> Result<(), Box<dyn Error>> {
|
||||
let mut schemas = Schemas::new();
|
||||
let mut compiler = Compiler::new();
|
||||
let sch_index = compiler.compile(schema_file, &mut schemas)?;
|
||||
let result = schemas.validate(&instance, sch_index);
|
||||
let result = schemas.validate(&instance, sch_index, None);
|
||||
assert!(result.is_ok());
|
||||
|
||||
Ok(())
|
||||
@ -51,7 +51,7 @@ fn example_from_strings() -> Result<(), Box<dyn Error>> {
|
||||
compiler.add_resource("tests/examples/pet.json", pet_schema)?;
|
||||
compiler.add_resource("tests/examples/cat.json", cat_schema)?;
|
||||
let sch_index = compiler.compile("tests/examples/pet.json", &mut schemas)?;
|
||||
let result = schemas.validate(&instance, sch_index);
|
||||
let result = schemas.validate(&instance, sch_index, None);
|
||||
assert!(result.is_ok());
|
||||
|
||||
Ok(())
|
||||
@ -79,7 +79,7 @@ fn example_from_https() -> Result<(), Box<dyn Error>> {
|
||||
loader.register("https", Box::new(HttpUrlLoader));
|
||||
compiler.use_loader(Box::new(loader));
|
||||
let sch_index = compiler.compile(schema_url, &mut schemas)?;
|
||||
let result = schemas.validate(&instance, sch_index);
|
||||
let result = schemas.validate(&instance, sch_index, None);
|
||||
assert!(result.is_ok());
|
||||
|
||||
Ok(())
|
||||
@ -114,7 +114,7 @@ fn example_from_yaml_files() -> Result<(), Box<dyn Error>> {
|
||||
loader.register("file", Box::new(FileUrlLoader));
|
||||
compiler.use_loader(Box::new(loader));
|
||||
let sch_index = compiler.compile(schema_file, &mut schemas)?;
|
||||
let result = schemas.validate(&instance, sch_index);
|
||||
let result = schemas.validate(&instance, sch_index, None);
|
||||
assert!(result.is_ok());
|
||||
|
||||
Ok(())
|
||||
@ -148,7 +148,7 @@ fn example_custom_format() -> Result<(), Box<dyn Error>> {
|
||||
});
|
||||
compiler.add_resource(schema_url, schema)?;
|
||||
let sch_index = compiler.compile(schema_url, &mut schemas)?;
|
||||
let result = schemas.validate(&instance, sch_index);
|
||||
let result = schemas.validate(&instance, sch_index, None);
|
||||
assert!(result.is_ok());
|
||||
|
||||
Ok(())
|
||||
@ -193,7 +193,7 @@ fn example_custom_content_encoding() -> Result<(), Box<dyn Error>> {
|
||||
});
|
||||
compiler.add_resource(schema_url, schema)?;
|
||||
let sch_index = compiler.compile(schema_url, &mut schemas)?;
|
||||
let result = schemas.validate(&instance, sch_index);
|
||||
let result = schemas.validate(&instance, sch_index, None);
|
||||
assert!(result.is_err());
|
||||
|
||||
Ok(())
|
||||
@ -223,7 +223,7 @@ fn example_custom_content_media_type() -> Result<(), Box<dyn Error>> {
|
||||
});
|
||||
compiler.add_resource(schema_url, schema)?;
|
||||
let sch_index = compiler.compile(schema_url, &mut schemas)?;
|
||||
let result = schemas.validate(&instance, sch_index);
|
||||
let result = schemas.validate(&instance, sch_index, None);
|
||||
assert!(result.is_ok());
|
||||
|
||||
Ok(())
|
||||
|
||||
@ -52,7 +52,7 @@ fn test_folder(suite: &str, folder: &str, draft: Draft) -> Result<(), Box<dyn Er
|
||||
let sch = compiler.compile(schema_url, &mut schemas)?;
|
||||
for test in group.tests {
|
||||
println!(" {}", test.description);
|
||||
match schemas.validate(&test.data, sch) {
|
||||
match schemas.validate(&test.data, sch, None) {
|
||||
Ok(_) => println!(" validation success"),
|
||||
Err(e) => {
|
||||
if let Some(sch) = test.output.basic {
|
||||
@ -64,7 +64,7 @@ fn test_folder(suite: &str, folder: &str, draft: Draft) -> Result<(), Box<dyn Er
|
||||
compiler.add_resource(schema_url, sch)?;
|
||||
let sch = compiler.compile(schema_url, &mut schemas)?;
|
||||
let basic: Value = serde_json::from_str(&e.basic_output().to_string())?;
|
||||
let result = schemas.validate(&basic, sch);
|
||||
let result = schemas.validate(&basic, sch, None);
|
||||
if let Err(e) = result {
|
||||
println!("{basic:#}\n");
|
||||
for line in format!("{e}").lines() {
|
||||
@ -83,7 +83,7 @@ fn test_folder(suite: &str, folder: &str, draft: Draft) -> Result<(), Box<dyn Er
|
||||
let sch = compiler.compile(schema_url, &mut schemas)?;
|
||||
let detailed: Value =
|
||||
serde_json::from_str(&e.detailed_output().to_string())?;
|
||||
let result = schemas.validate(&detailed, sch);
|
||||
let result = schemas.validate(&detailed, sch, None);
|
||||
if let Err(e) = result {
|
||||
println!("{detailed:#}\n");
|
||||
for line in format!("{e}").lines() {
|
||||
|
||||
@ -90,7 +90,7 @@ fn test_file(suite: &str, path: &str, draft: Draft) -> Result<(), Box<dyn Error>
|
||||
let sch_index = compiler.compile(url, &mut schemas)?;
|
||||
for test in group.tests {
|
||||
println!(" {}", test.description);
|
||||
let result = schemas.validate(&test.data, sch_index);
|
||||
let result = schemas.validate(&test.data, sch_index, None);
|
||||
if let Err(e) = &result {
|
||||
for line in format!("{e}").lines() {
|
||||
println!(" {line}");
|
||||
|
||||
Reference in New Issue
Block a user