% WAM-lite predicate_property/2 + evaluable_property/2 smoke tests.

:- catch(set_prolog_flag(flowlog_engine, wam), _, true).

p(a).

ok :-
    predicate_property(true, built_in),
    predicate_property(true, static),
    \+ predicate_property(true, dynamic),

    predicate_property(p(_), static),
    dynamic(foo/1),
    predicate_property(foo(_), dynamic),

    predicate_property(write(_), template(Tw)),
    functor(Tw, write, 1),

    evaluable_property(+(1, 2), template(T, R)),
    functor(T, '+', 2),
    arg(1, T, A), A == number,
    arg(2, T, B), B == number,
    R == number.
