mirror of
https://github.com/microsoft/regorus.git
synced 2026-08-05 02:16:11 +00:00
153 lines
3.5 KiB
YAML
153 lines
3.5 KiB
YAML
# Copyright (c) Microsoft Corporation.
|
|
# Licensed under the MIT License.
|
|
cases:
|
|
- note: chained
|
|
data: {}
|
|
modules:
|
|
- |
|
|
package test
|
|
|
|
sites := [
|
|
{
|
|
"region": "east",
|
|
"name": "prod",
|
|
"servers": [
|
|
{
|
|
"name": "web-0",
|
|
"hostname": "hydrogen"
|
|
},
|
|
{
|
|
"name": "web-1",
|
|
"hostname": "helium"
|
|
},
|
|
{
|
|
"name": "db-0",
|
|
"hostname": "lithium"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"region": "west",
|
|
"name": "smoke",
|
|
"servers": [
|
|
{
|
|
"name": "web-1000",
|
|
"hostname": "beryllium"
|
|
},
|
|
{
|
|
"name": "web-1001",
|
|
"hostname": "boron"
|
|
},
|
|
{
|
|
"name": "db-1000",
|
|
"hostname": "carbon"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"region": "west",
|
|
"name": "dev",
|
|
"servers": [
|
|
{
|
|
"name": "web-dev",
|
|
"hostname": "nitrogen"
|
|
},
|
|
{
|
|
"name": "db-dev",
|
|
"hostname": "oxygen"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
|
|
apps := [
|
|
{
|
|
"name": "web",
|
|
"servers": ["web-0", "web-1", "web-1000", "web-1001", "web-dev"]
|
|
},
|
|
{
|
|
"name": "mysql",
|
|
"servers": ["db-0", "db-1000"]
|
|
},
|
|
{
|
|
"name": "mongodb",
|
|
"servers": ["db-dev"]
|
|
}
|
|
]
|
|
|
|
containers := [
|
|
{
|
|
"image": "redis",
|
|
"ipaddress": "10.0.0.1",
|
|
"name": "big_stallman"
|
|
},
|
|
{
|
|
"image": "nginx",
|
|
"ipaddress": "10.0.0.2",
|
|
"name": "cranky_euclid"
|
|
}
|
|
]
|
|
|
|
x1[y] {
|
|
y = sites[_].servers[_].hostname
|
|
}
|
|
|
|
x5[y] {
|
|
y = sites[i].servers[i].hostname
|
|
}
|
|
|
|
obj = {
|
|
"a" : {
|
|
"a" : "b",
|
|
"b" : "c"
|
|
},
|
|
"c" : {
|
|
"c" : "d"
|
|
}
|
|
}
|
|
|
|
x6[y] {
|
|
y = obj[i][i]
|
|
}
|
|
|
|
# Another definition for x6
|
|
x6[y] {
|
|
y = obj[i][obj[i][i]]
|
|
}
|
|
|
|
x7[y] {
|
|
y = obj[i][obj[i][i]]
|
|
}
|
|
|
|
results = {
|
|
"x1" : x1,
|
|
"x2" : x1 == { y | y = sites[i].servers[_].hostname },
|
|
"x3" : x1 == { y | y = sites[_].servers[i].hostname },
|
|
"x4" : x1 == { y | y = sites[i].servers[j].hostname },
|
|
"x6" : x6,
|
|
"x7" : x7,
|
|
}
|
|
|
|
|
|
query: data.test.results
|
|
want_result:
|
|
x1:
|
|
set!: [
|
|
"beryllium",
|
|
"boron",
|
|
"carbon",
|
|
"helium",
|
|
"hydrogen",
|
|
"lithium",
|
|
"nitrogen",
|
|
"oxygen",
|
|
]
|
|
x2: true
|
|
x3: true
|
|
x4: true
|
|
x6:
|
|
set!: ["b", "c", "d"]
|
|
x7:
|
|
set!: ["c"]
|
|
|