- more flexible tester function