% $Id: RMemberTest.oz,v 1.1 2007/11/30 20:05:55 leavens Exp leavens $ \insert 'RMember.oz' \insert 'SolveFirst.oz' \insert 'SolveAll.oz' {StartTesting 'RMember forwards'} {Test {SolveAll proc {$ V} {RMember 3 nil} V=ok end} '==' nil} {Test {SolveAll proc {$ V} {RMember 3 4|3|2|nil} V=ok end} '==' [ok]} {StartTesting 'RMember backwards'} {Test {SolveAll proc {$ E} {RMember E 4|3|2|nil} end} '==' [4 3 2]} % We can't use Test to compare partial lists, since the comparison suspends, % hence we use Show below {StartTesting 'RMember to generate'} {Show {List.take {Solve proc {$ V} {RMember 3 V} end} 4}} {StartTesting 'RMember2'} {Test {SolveAll proc {$ V} {RMember2 3 nil} V=ok end} '==' nil} {Test {SolveAll proc {$ V} {RMember2 3 4|3|2|nil} V=ok end} '==' [ok]} {StartTesting 'RMember2 backwards'} {Test {SolveAll proc {$ E} {RMember2 E 4|3|2|nil} end} '==' [4 3 2]} % We can't use Test to compare partial lists, since the comparison suspends, % hence we use Show below {StartTesting 'RMember2 to generate'} {Show {List.take {Solve proc {$ V} {RMember2 3 V} end} 4}}