Fix flaky SQLite test.

The test was dependent on the order of column names stored in a hashmap.
Made the test more resilient to variations in column order.

Bug: 12475524
Change-Id: I9fe70b60e3143980eca754443fd4cd14754555d4
diff --git a/tests/tests/database/src/android/database/sqlite/cts/SQLiteQueryBuilderTest.java b/tests/tests/database/src/android/database/sqlite/cts/SQLiteQueryBuilderTest.java
index 09903df..97b0b8f 100644
--- a/tests/tests/database/src/android/database/sqlite/cts/SQLiteQueryBuilderTest.java
+++ b/tests/tests/database/src/android/database/sqlite/cts/SQLiteQueryBuilderTest.java
@@ -109,15 +109,19 @@
 
         sql = sqliteQueryBuilder.buildQuery(null, // projectionIn is null
                 null, null, null, null, null, null);
-        // TODO: implement an order-independent way of doing the projection columns comparison
-        expected = "SELECT age, name, address FROM " + TEST_TABLE_NAME;
-        assertEquals(expected, sql);
+        assertTrue(sql.matches("SELECT (age|name|address), (age|name|address), (age|name|address) "
+                + "FROM " + TEST_TABLE_NAME));
+        assertTrue(sql.contains("age"));
+        assertTrue(sql.contains("name"));
+        assertTrue(sql.contains("address"));
 
         sqliteQueryBuilder.setProjectionMap(null);
         sql = sqliteQueryBuilder.buildQuery(new String[] { "name", "address" },
                 null, null, null, null, null, null);
-        expected = "SELECT name, address FROM " + TEST_TABLE_NAME;
-        assertEquals(expected, sql);
+        assertTrue(sql.matches("SELECT (name|address), (name|address) "
+                + "FROM " + TEST_TABLE_NAME));
+        assertTrue(sql.contains("name"));
+        assertTrue(sql.contains("address"));
     }
 
     public void testSetCursorFactory() {