File: from_json_booleans.cf

package info (click to toggle)
cfengine3 3.24.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 37,552 kB
  • sloc: ansic: 163,161; sh: 10,296; python: 2,950; makefile: 1,744; lex: 784; yacc: 633; perl: 211; pascal: 157; xml: 21; sed: 13
file content (38 lines) | stat: -rw-r--r-- 1,221 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
###########################################################
#
# Test expansion of JSON booleans
#
###########################################################

body common control
{
    inputs => { "../../default.cf.sub" };
    bundlesequence => { default($(this.promise_filename)) };
    version => "1.0";
}

###########################################################

bundle agent test
{
  classes:
      "canary" expression => "any", meta => { "collect" }; # just a baseline test
      "from_$(json)" expression => "$(json)", meta => { "collect" }; # iterates through non-nulls
      "from_null" expression => "$(json[maybe])", meta => { "collect" };
      "from_missing" expression => "$(json[nonesuch])", meta => { "collect" };

  vars:
      "json" data => '{ "yes": true, "no": false, "maybe": null }';
      "var_$(json)" string => "$(json)";
      "collected" slist => sort(classesmatching(".*", "collect"));
}

###########################################################

bundle agent check
{
  methods:
      "check"  usebundle => dcs_check_state(test,
                                           "$(this.promise_filename).expected.json",
                                           $(this.promise_filename));
}