test the whole program