zeek/testing/btest/language/at-if.zeek
Robin Sommer 789cb376fd GH-239: Rename bro to zeek, bro-config to zeek-config, and bro-path-dev to zeek-path-dev.
This also installs symlinks from "zeek" and "bro-config" to a wrapper
script that prints a deprecation warning.

The btests pass, but this is still WIP. broctl renaming is still
missing.

#239
2019-05-01 21:43:45 +00:00

57 lines
743 B
Text

# @TEST-EXEC: zeek -b %INPUT >out
# @TEST-EXEC: btest-diff out
function test_case(msg: string, expect: bool)
{
print fmt("%s (%s)", msg, expect ? "PASS" : "FAIL");
}
function foo(c: count): bool
{ return c == 42 ? T : F; }
global TRUE_CONDITION = T;
event zeek_init()
{
local xyz = 0;
# Test "if" without "else"
@if ( F )
xyz += 1;
@endif
@if ( foo(0) )
xyz += 1;
@endif
@if ( T && foo(42) )
xyz += 2;
@endif
test_case( "@if", xyz == 2 );
# Test "if" with an "else"
xyz = 0;
@if ( F )
xyz += 1;
@else
xyz += 2;
@endif
test_case( "@if...@else", xyz == 2 );
xyz = 0;
@if ( T && TRUE_CONDITION )
xyz += 1;
@else
xyz += 2;
@endif
test_case( "@if...@else", xyz == 1 );
}