removed schema realms, fixed fixture generations, added dynamic type resolution for validation based on type and kind discriminators for filters
This commit is contained in:
@ -1247,6 +1247,36 @@ fn test_const_17_1() {
|
||||
crate::tests::runner::run_test_case(&path, 17, 1).unwrap();
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_dynamic_type_0_0() {
|
||||
let path = format!("{}/fixtures/dynamicType.json", env!("CARGO_MANIFEST_DIR"));
|
||||
crate::tests::runner::run_test_case(&path, 0, 0).unwrap();
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_dynamic_type_0_1() {
|
||||
let path = format!("{}/fixtures/dynamicType.json", env!("CARGO_MANIFEST_DIR"));
|
||||
crate::tests::runner::run_test_case(&path, 0, 1).unwrap();
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_dynamic_type_0_2() {
|
||||
let path = format!("{}/fixtures/dynamicType.json", env!("CARGO_MANIFEST_DIR"));
|
||||
crate::tests::runner::run_test_case(&path, 0, 2).unwrap();
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_dynamic_type_0_3() {
|
||||
let path = format!("{}/fixtures/dynamicType.json", env!("CARGO_MANIFEST_DIR"));
|
||||
crate::tests::runner::run_test_case(&path, 0, 3).unwrap();
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_dynamic_type_0_4() {
|
||||
let path = format!("{}/fixtures/dynamicType.json", env!("CARGO_MANIFEST_DIR"));
|
||||
crate::tests::runner::run_test_case(&path, 0, 4).unwrap();
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_property_names_0_0() {
|
||||
let path = format!("{}/fixtures/propertyNames.json", env!("CARGO_MANIFEST_DIR"));
|
||||
|
||||
@ -160,7 +160,7 @@ fn test_library_api() {
|
||||
"target": { "type": ["target_schema.filter", "null"] },
|
||||
"type": { "type": ["string.condition", "null"] }
|
||||
},
|
||||
"type": "filter"
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"sensitive": false,
|
||||
@ -211,7 +211,7 @@ fn test_library_api() {
|
||||
},
|
||||
"value": { "type": ["number.condition", "null"] }
|
||||
},
|
||||
"type": "filter"
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"sensitive": false,
|
||||
|
||||
@ -35,12 +35,7 @@ impl Expect {
|
||||
if expected_val.is_object() && expected_val.as_object().unwrap().is_empty() {
|
||||
continue; // A `{}` means we just wanted to test it was collected/promoted, skip deep match
|
||||
}
|
||||
let schema_realm = if key.ends_with(".request") || key.ends_with(".response") {
|
||||
crate::database::realm::SchemaRealm::Punc
|
||||
} else {
|
||||
crate::database::realm::SchemaRealm::Type
|
||||
};
|
||||
let actual_ast = db.get_scoped_schema(schema_realm, key).unwrap();
|
||||
let actual_ast = db.schemas.get(key).cloned().unwrap();
|
||||
let actual_val = serde_json::to_value(actual_ast).unwrap();
|
||||
|
||||
if actual_val != *expected_val {
|
||||
|
||||
Reference in New Issue
Block a user