Skip to content

Commit fd14f61

Browse files
committed
Add test inventory which uses reference default value and Python test
1 parent 611ce9c commit fd14f61

4 files changed

Lines changed: 93 additions & 0 deletions

File tree

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
parameters:
2+
class1:
3+
foo: ${class1:bar::default}
4+
foo2: ${class1:foo}
5+
qux: \${foo}
6+
qux2: ${foo::\${foo\}}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
parameters:
2+
class2:
3+
foo: ${bar::default}
4+
bar:
5+
baz:
6+
foo: foo
7+
qux:
8+
foo: foo
9+
bar: bar
10+
qux:
11+
foo: class2foo
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
classes:
2+
- class1
3+
- class2
4+
5+
parameters:
6+
n1_a: ${class3::${class1}}
7+
n1_list:
8+
- a
9+
- \${bar}
10+
n1_b: ${foo::${n1_list}}
11+
class2:
12+
foo: foo
13+
bar: ${class1}
14+
qux:
15+
foo: ${class1:bar::${class1:foo}}
16+
17+
expected:
18+
class1:
19+
foo: default
20+
foo2: default
21+
qux: \${foo}
22+
qux2: \${foo}
23+
class2:
24+
foo: foo
25+
bar:
26+
foo: default
27+
foo2: default
28+
qux: \${foo}
29+
qux2: \${foo}
30+
baz:
31+
foo: foo
32+
qux:
33+
foo: foo
34+
bar: bar
35+
qux:
36+
foo: default
37+
n1_a:
38+
foo: default
39+
foo2: default
40+
qux: \${foo}
41+
qux2: \${foo}
42+
n1_list:
43+
- a
44+
- \${bar}
45+
n1_b:
46+
- a
47+
- \${bar}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import reclass_rs
2+
import pytest
3+
import sys
4+
5+
6+
def test_inventory_class_mappings():
7+
import reclass
8+
import reclass.core
9+
10+
config_options = {
11+
"nodes_uri": "nodes",
12+
"classes_uri": "classes",
13+
}
14+
c = reclass_rs.Config.from_dict(
15+
"./tests/inventory-reference-default-values", config_options
16+
)
17+
assert c is not None
18+
19+
r = reclass_rs.Reclass.from_config(c)
20+
assert r is not None
21+
22+
inv = r.inventory().as_dict()
23+
24+
n1_params = inv["nodes"]["n1"]["parameters"]
25+
n1_expected = n1_params["expected"]
26+
del n1_params["expected"]
27+
del n1_params["_reclass_"]
28+
29+
assert n1_params == n1_expected

0 commit comments

Comments
 (0)