test then commit