zeek/auxil/spicy/tests/hilti/statements/try-across-hooks.hlt
Patrick Kelley 8fd444092b initial
2025-05-07 15:35:15 -04:00

45 lines
590 B
Plaintext

# @TEST-EXEC: ${HILTIC} -j %INPUT foo.hlt bar.hlt >output
# @TEST-EXEC: btest-diff output
@TEST-START-FILE foo.hlt
module Foo {
import hilti;
public type E = exception;
declare public hook void f1();
public hook void f1() &priority=5 { hilti::print("Foo: f1"); }
}
@TEST-END-FILE
@TEST-START-FILE bar.hlt
module Bar {
import hilti;
import Foo;
hook void Foo::f1() { hilti::print("Bar: f1"); throw Foo::E("Bar::f1"); }
}
@TEST-END-FILE
module Test {
import hilti;
import Foo;
try {
Foo::f1();
} catch ( Foo::E e ) {
hilti::print(("Caught: ", e.description()));
}
}