mirror of
https://github.com/microsoft/regorus.git
synced 2026-08-05 02:16:11 +00:00
Merge pull request #516 from anakrish/rvm-opa-2
Handle more OPA semantics in RVM and compiler
This commit is contained in:
10
tests/opa.rs
10
tests/opa.rs
@@ -22,28 +22,18 @@ const OPA_BRANCH: &str = "v1.2.0";
|
||||
const OPA_TODO_FOLDERS: &[&str] = &[
|
||||
"aggregates",
|
||||
"baseandvirtualdocs",
|
||||
"comparisonexpr",
|
||||
"dataderef",
|
||||
"defaultkeyword",
|
||||
"disjunction",
|
||||
"elsekeyword",
|
||||
"eqexpr",
|
||||
"every",
|
||||
"example",
|
||||
"fix1863",
|
||||
"functions",
|
||||
"jsonschema",
|
||||
"partialdocconstants",
|
||||
"partialobjectdoc",
|
||||
"planner-ir",
|
||||
"rand",
|
||||
"refheads",
|
||||
"replacen",
|
||||
"semverisvalid",
|
||||
"sets",
|
||||
"time",
|
||||
"type",
|
||||
"varreferences",
|
||||
"virtualdocs",
|
||||
"walkbuiltin",
|
||||
"withkeyword",
|
||||
|
||||
15
tests/rvm/rego/cases/builtins_cache.yaml
Normal file
15
tests/rvm/rego/cases/builtins_cache.yaml
Normal file
@@ -0,0 +1,15 @@
|
||||
# Copyright (c) Microsoft Corporation.
|
||||
# Licensed under the MIT License.
|
||||
|
||||
cases:
|
||||
- note: builtin_rand_intn_cache_consistency
|
||||
data: {}
|
||||
modules:
|
||||
- |
|
||||
package test
|
||||
|
||||
rands := { rand.intn("seed", 100) | numbers.range(1, 100)[_] }
|
||||
|
||||
np := count(rands)
|
||||
query: data.test.np
|
||||
want_result: 1
|
||||
@@ -196,6 +196,30 @@ cases:
|
||||
query: data.test.main
|
||||
want_result: "web1"
|
||||
|
||||
- note: literal_array_root_access
|
||||
data: {}
|
||||
modules:
|
||||
- |
|
||||
package test
|
||||
|
||||
y := ["x", "y"][1]
|
||||
|
||||
main := y
|
||||
query: data.test.main
|
||||
want_result: "y"
|
||||
|
||||
- note: computed_object_root_access
|
||||
data: {}
|
||||
modules:
|
||||
- |
|
||||
package test
|
||||
|
||||
x := strings.replace_n({k: v | k := ["f", "foo"][i]; v := ["x", "xxx"][i]}, "foo")
|
||||
|
||||
main := x
|
||||
query: data.test.main
|
||||
want_result: "xoo"
|
||||
|
||||
- note: string_literal_bracket_access
|
||||
data: {}
|
||||
modules:
|
||||
|
||||
@@ -48,3 +48,15 @@ cases:
|
||||
}
|
||||
query: data.test.main
|
||||
want_result: true
|
||||
|
||||
- note: equality_literal_failure
|
||||
data: {}
|
||||
modules:
|
||||
- |
|
||||
package test
|
||||
|
||||
x if {
|
||||
0 = 1
|
||||
}
|
||||
query: data.test.x
|
||||
want_result: "#undefined"
|
||||
|
||||
@@ -13,3 +13,13 @@ cases:
|
||||
main := [(x * 2) | some x in [1, 2, 3]]
|
||||
query: data.test.main
|
||||
want_result: [2, 4, 6]
|
||||
|
||||
- note: comprehension_equality_failure_returns_empty
|
||||
data: {}
|
||||
modules:
|
||||
- |
|
||||
package test
|
||||
|
||||
z := [x | x := 1; x == 2]
|
||||
query: data.test.z
|
||||
want_result: []
|
||||
|
||||
Reference in New Issue
Block a user