framework to test programs
