mirror of
https://github.com/microsoft/regorus.git
synced 2026-08-05 02:16:11 +00:00
Second lookup of an object rule without fully qualified path, resulted in returning the object instead of the requested field. Signed-off-by: Anand Krishnamoorthi <anakrish@microsoft.com>
90 lines
1.8 KiB
YAML
90 lines
1.8 KiB
YAML
# Copyright (c) Microsoft Corporation.
|
|
# Licensed under the MIT License.
|
|
|
|
cases:
|
|
- note: basic
|
|
data: {}
|
|
modules:
|
|
- |
|
|
package test
|
|
|
|
array = [1, 2, 3]
|
|
|
|
nested_array = [1, [2, 3, 4], 5, 6]
|
|
|
|
object = { "key0": "value0" }
|
|
|
|
key = "key"
|
|
|
|
object_var = { key: array }
|
|
|
|
local_0 = x {
|
|
x = 10
|
|
}
|
|
|
|
local_1 = x {
|
|
x = "test_local"
|
|
}
|
|
|
|
# Set with nested object, array and set.
|
|
set = { 1, 2,
|
|
{"a": 3, "b" : 4}, [5, 6], {7, 8}}
|
|
|
|
# Object with non-string as keys
|
|
complex_object = {
|
|
{1, 2, 3} : [4, 5, 6],
|
|
true: false,
|
|
[1, 3] : {"hello", "world"}
|
|
}
|
|
|
|
query: data.test
|
|
want_result:
|
|
array: [1, 2, 3]
|
|
nested_array: [1, [2, 3, 4], 5, 6]
|
|
object:
|
|
key0: value0
|
|
key: key
|
|
object_var:
|
|
key: [1, 2, 3]
|
|
local_0: 10
|
|
local_1: test_local
|
|
set:
|
|
# Specify set using special encoding.
|
|
# Order of elements shouldn't matter for set.
|
|
set!:
|
|
- 2
|
|
- 1
|
|
- a : 3
|
|
b : 4
|
|
- [5, 6]
|
|
- set!: [8, 7]
|
|
complex_object:
|
|
# Specify object using special encoding.
|
|
object!:
|
|
- key:
|
|
set!: [3, 2, 1]
|
|
value: [4, 5, 6]
|
|
- key: true
|
|
value: false
|
|
- key: [1, 3]
|
|
value:
|
|
set!:
|
|
- "hello"
|
|
- "world"
|
|
|
|
|
|
- note: value chain (unqualified)
|
|
data: {}
|
|
modules:
|
|
- |
|
|
package test
|
|
|
|
a = {
|
|
"b" : 5
|
|
}
|
|
x = a.b
|
|
# The second look up must also produce the same value.
|
|
y = a.b
|
|
query: data.test.y
|
|
want_result: 5
|