:- use_module(library(lists)).


test a(X) returns atom(X) .+
given  user:goal_expansion(a(X), current_atom(X))

test m:a(3,X) returns X =@= 15,
given  user:goal_expansion(a(X,Y), Y is X*5)

test m:a(3,X) returns X =@= 9
given  user:goal_expansion(a(X,Y), m, Y is X*X ))

test  m:a(3,X) returns X =@= 9
given  user:goal_expansion(a(X,Y), m, Y is X*X ), user:goal_expansion(a(X), X is 3*5)