public void call_1()
{
AbstractMachineState state = SetupMachine();
AMProgram program = (AMProgram)state.Program;
_p = new CallPredicate();
Verify("call", 1);
AbstractTerm X0 = (AbstractTerm)state["X0"];
StructureTerm goal = new StructureTerm("male", 1);
goal.Next = new ConstantTerm("ali");
program.AddLabel("male/1", new ProgramClause("male", 1));
X0.Assign(goal);
_p.Execute(state);
Assert.AreEqual(X0.Data(), "ali");
ProgramClause p = (ProgramClause)program.P;
Assert.AreEqual(p.Name, "male");
Assert.AreEqual(p.Arity, 1);
}