retract_all :-
	retract( prato(_) )       , fail,
	retract( vitela(_) )      , fail,
	retract( peru(_) )        , fail,
	retract( molho(_) )       , fail,
	retract( tipo_molho(_) )  , fail,
	retract( docura(_) )      , fail,
	retract( cor(_) )         , fail.

run_tests :-
	test2,
	test1.


/* test 1 */
test1 :-
	write('test1'),
	assert(prato(ave)),
	assert(peru(sim)),
	assert(molho(nao)),
	assert(docura(suave)),
	assert(cor(branco)),
	perform_search,
	retract_all.

/* test 2 */
test2 :-
	write('test2'),
	assert(prato(vegetariano)),
	assert(molho(sim)),
	assert(tipo_molho(tomate)),
	assert(docura(seco)),
	assert(cor(tinto)),
	perform_search,
	retract_all.
