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 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
#######################################################
#
# Test getfields()
#
#######################################################
body common control
{
inputs => { "../../default.cf.sub" };
bundlesequence => { default("$(this.promise_filename)") };
version => "1.0";
}
#######################################################
bundle agent init
{
files:
"$(G.testfile)"
create => "true",
edit_line => init_fill_in;
reports:
DEBUG::
"Created $(G.testfile)";
}
bundle edit_line init_fill_in
{
insert_lines:
"one:data1";
"two:data2";
"three:data3";
}
body delete init_delete
{
dirlinks => "delete";
rmdirs => "true";
}
#######################################################
bundle agent test
{
vars:
"num_matching" int => getfields("t.*", "$(G.testfile)", ":", "fields");
}
#######################################################
bundle agent check
{
classes:
any::
"ok" and => {
strcmp("$(test.fields[1])", "two"),
strcmp("$(test.fields[2])", "data2"),
strcmp("$(test.num_matching)", "2")
};
reports:
DEBUG::
"got field $(test.fields[1])";
"got field $(test.fields[2])";
"num_matching is $(test.num_matching)";
ok::
"$(this.promise_filename) Pass";
!ok::
"$(this.promise_filename) FAIL";
}
|