add a new more sophisticated test case