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 74
|
# Redmine#2926: test long lines with readstringarrayidx()
body common control
{
inputs => { "../../default.cf.sub" };
bundlesequence => { default("$(this.promise_filename)") };
version => "1.0";
}
bundle agent init
{
}
bundle agent test
{
vars:
"params" data => data_readstringarrayidx("$(this.promise_filename).txt",
"\s*#[^\n]*",
";",
9999,
99999);
"params_str" string => format("%S", params);
"pk" slist => getindices(params);
reports:
DEBUG::
"params: $(params_str)";
}
bundle agent check
{
vars:
"dim" int => length("test.params");
"length" int => length("test.pk");
"last" string => nth("test.value", 599);
"pluck_23" data => mergedata("test.params[22]");
"pluck_24" data => mergedata("test.params[23]");
classes:
"ok1" expression => strcmp($(dim), "24");
"ok2" expression => strcmp($(dim), $(length));
"ok3" expression => strcmp("$(test.params[2][0])", "not_working_app_config");
"ok4" expression => strcmp("$(pluck_24[0])", "LAST");
"ok5" expression => strcmp("$(pluck_23[0])", "NEXT-TO-LAST");
"ok" and => { "ok1", "ok2", "ok3", "ok4", "ok5" };
reports:
DEBUG.ok1::
"passed1";
DEBUG.ok2::
"passed2";
DEBUG.ok3::
"passed3";
DEBUG.ok4::
"passed4";
DEBUG.ok5::
"passed5";
DEBUG.!ok1::
"failed1 $(dim) != 24";
DEBUG.!ok2::
"failed2 $(dim) != $(length)";
DEBUG.!ok3::
"failed3 $(test.params[2][0]) != not_working_app_config";
DEBUG.!ok4::
"failed4 $(pluck_24[0]) != LAST";
DEBUG.!ok5::
"failed5 $(pluck_23[0]) != NEXT-TO-LAST";
ok::
"$(this.promise_filename) Pass";
!ok::
"$(this.promise_filename) FAIL";
}
|