zeek/testing
Jon Siwek 33ca675515 GH-927: Fix circumvention of evaluation order in 'when' conditions
Historically, a 'when' condition performed an AST-traversal to locate
any index-expressions like `x[9]` and evaluated them so that it could
register the associated value as something for which it needs to receive
"modification" notifications.

Evaluating arbitrary expressions during an AST-traversal like that ignores
the typical order-of-evaluation/short-circuiting you'd expect if the
condition was evaluated normally, from its root expression.

Now, a new subclass of IndexExpr is used to keep track of all IndexExpr
results in the context of evaluating a 'when' condition without having
to do a secondary AST-traversal-and-eval.  i.e. the first evaluation of
the full 'when' condition follows the typical expression-evaluation
semantics (as always), but additionally now captures all the values
a Trigger needs to monitor for modifications.
2020-09-15 17:03:44 -07:00
..
btest GH-927: Fix circumvention of evaluation order in 'when' conditions 2020-09-15 17:03:44 -07:00
coverage More bro-to-zeek renaming in the unit tests 2019-05-16 02:27:54 -05:00
external Merge remote-tracking branch 'origin/topic/timw/open-dict' 2020-08-11 11:38:14 -07:00
scripts GH-1149: Add GitHub Action to automate generation of zeek-docs 2020-09-01 17:52:00 -07:00
.gitignore
Makefile Added coverage to .PHONY in Makefile due to testing/coverage 2018-07-30 12:17:40 -07:00
README More bro-to-zeek renaming in the unit tests 2019-05-16 02:27:54 -05:00

This directory contains suites for testing for Zeek's correct
operation:

    btest/
        An ever-growing set of small unit tests testing Zeek's
        functionality.

    external/
        A framework for downloading additional test sets that run more
        complex Zeek configuration on larger traces files. Due to their
        size, these are not included directly. See the README for more
        information. 

    scripts/
        Helpers scripts used by some tests.