restructuring testing framework