tests for all possibilities