table-driven tests
handle unicode input correctly