mirror of
https://github.com/microsoft/regorus.git
synced 2026-08-05 02:16:11 +00:00
Arity for builtins (#28)
Old-style function call Utility for running opa yaml tests Signed-off-by: Anand Krishnamoorthi <anakrish@microsoft.com>
This commit is contained in:
committed by
GitHub
parent
951bb6b14c
commit
800e594d52
@@ -19,7 +19,7 @@ cases:
|
||||
u3 = min(set())
|
||||
query: data.test
|
||||
want_result:
|
||||
x: [ 3, 2 ]
|
||||
x: [ -1, -1 ]
|
||||
|
||||
- note: invalid-null
|
||||
data: {}
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
# Copyright (c) Microsoft Corporation.
|
||||
# Licensed under the MIT License.
|
||||
|
||||
cases:
|
||||
- note: basic
|
||||
data: {}
|
||||
modules:
|
||||
- |
|
||||
package test
|
||||
|
||||
a = [1, 2, 3, 4]
|
||||
|
||||
p = x {
|
||||
count(a, x)
|
||||
}
|
||||
|
||||
query: data.test.p = x
|
||||
want_result:
|
||||
x: 4
|
||||
@@ -32,7 +32,7 @@ fn basic_array() -> Result<()> {
|
||||
array_compr_7 = [ 1 | [1, 2, 3][_]; [1, 2][_] >= 2 ]
|
||||
"#;
|
||||
|
||||
let expected = vec![Value::from_json_str(
|
||||
let expected = [Value::from_json_str(
|
||||
r#" {
|
||||
"array": [1, 2, 3],
|
||||
"array_compr_0": [1],
|
||||
@@ -46,11 +46,10 @@ fn basic_array() -> Result<()> {
|
||||
}"#,
|
||||
)?];
|
||||
|
||||
assert_match(
|
||||
eval_file(&[rego.to_owned()], None, None, "data.test", false)?,
|
||||
expected,
|
||||
);
|
||||
Ok(())
|
||||
check_output(
|
||||
&eval_file(&[rego.to_owned()], None, None, "data.test", false)?,
|
||||
&expected,
|
||||
)
|
||||
}
|
||||
|
||||
#[test]
|
||||
@@ -81,7 +80,7 @@ fn basic_set() -> Result<()> {
|
||||
set_compr_7 = { a | a = [1, 2, 3][_]; [1, 2][_] >= 2 }
|
||||
"#;
|
||||
|
||||
let expected = vec![Value::from_json_str(
|
||||
let expected = [Value::from_json_str(
|
||||
r#" {
|
||||
"set": {
|
||||
"set!": [1, "string", [2, 3, 4], 567, false]
|
||||
@@ -115,9 +114,8 @@ fn basic_set() -> Result<()> {
|
||||
}"#,
|
||||
)?];
|
||||
|
||||
assert_match(
|
||||
eval_file(&[rego.to_owned()], None, None, "data.test", false)?,
|
||||
expected,
|
||||
);
|
||||
Ok(())
|
||||
check_output(
|
||||
&eval_file(&[rego.to_owned()], None, None, "data.test", false)?,
|
||||
&expected,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -99,7 +99,7 @@ fn basic() -> Result<()> {
|
||||
}
|
||||
"#;
|
||||
|
||||
let expected = vec![Value::from_json_str(
|
||||
let expected = [Value::from_json_str(
|
||||
r#" {
|
||||
"array": [1, 2, 3],
|
||||
"in_array_key_value": true,
|
||||
@@ -119,9 +119,8 @@ fn basic() -> Result<()> {
|
||||
}"#,
|
||||
)?];
|
||||
|
||||
assert_match(
|
||||
eval_file(&[rego.to_owned()], None, None, "data.test", false)?,
|
||||
expected,
|
||||
);
|
||||
Ok(())
|
||||
check_output(
|
||||
&eval_file(&[rego.to_owned()], None, None, "data.test", false)?,
|
||||
&expected,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ fn basic() -> Result<()> {
|
||||
Value::from_json_str(r#"{"x": 6}"#)?,
|
||||
]);
|
||||
|
||||
let expected = vec![
|
||||
let expected = [
|
||||
Value::from_json_str(
|
||||
r#" {
|
||||
"y": {"set!": [6]},
|
||||
@@ -40,9 +40,8 @@ fn basic() -> Result<()> {
|
||||
)?,
|
||||
];
|
||||
|
||||
assert_match(
|
||||
eval_file_first_rule(&[rego.to_owned()], None, Some(input), "data.test", false)?,
|
||||
expected,
|
||||
);
|
||||
Ok(())
|
||||
check_output(
|
||||
&eval_file_first_rule(&[rego.to_owned()], None, Some(input), "data.test", false)?,
|
||||
&expected,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ fn basic() -> Result<()> {
|
||||
set = {1, 2, 3}
|
||||
"#;
|
||||
|
||||
let expected = vec![Value::from_json_str(
|
||||
let expected = [Value::from_json_str(
|
||||
r#" {
|
||||
"array": [1, 2, 3],
|
||||
"nested_array": [1, [2, 3, 4], 5, 6],
|
||||
@@ -46,9 +46,8 @@ fn basic() -> Result<()> {
|
||||
}"#,
|
||||
)?];
|
||||
|
||||
assert_match(
|
||||
eval_file(&[rego.to_owned()], None, None, "data.test", false)?,
|
||||
expected,
|
||||
);
|
||||
Ok(())
|
||||
check_output(
|
||||
&eval_file(&[rego.to_owned()], None, None, "data.test", false)?,
|
||||
&expected,
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user