fix cts tests after this 2 CLs in frameworks/base
fixing tests after
I42b2376d714a1a4091c843e245a45b882bb7fee6
and Iba87258e1c8fa18c2cc46d1d2ab56ec3e38413f2
Change-Id: Id95ebcc02aa14294194d9a7bb3f70d457b9eb4fd
diff --git a/tests/tests/database/src/android/database/sqlite/cts/SQLiteCursorTest.java b/tests/tests/database/src/android/database/sqlite/cts/SQLiteCursorTest.java
index fe4fa15..d608c2f 100644
--- a/tests/tests/database/src/android/database/sqlite/cts/SQLiteCursorTest.java
+++ b/tests/tests/database/src/android/database/sqlite/cts/SQLiteCursorTest.java
@@ -24,6 +24,7 @@
import android.content.Context;
import android.database.AbstractCursor;
+import android.database.Cursor;
import android.database.CursorWindow;
import android.database.DataSetObserver;
import android.database.StaleDataException;
@@ -79,8 +80,8 @@
TEST_SQL, TABLE_NAME);
try {
new SQLiteCursor(mDatabase, cursorDriver, TABLE_NAME, null);
- fail("constructor didn't throw NullPointerException when SQLiteQuery is null");
- } catch (NullPointerException e) {
+ fail("constructor didn't throw IllegalArgumentException when SQLiteQuery is null");
+ } catch (IllegalArgumentException e) {
}
// get SQLiteCursor by querying database
@@ -221,6 +222,44 @@
@TestTargets({
@TestTargetNew(
level = TestLevel.COMPLETE,
+ method = "requery",
+ args = {}
+ )
+ })
+ public void testRequery2() {
+ mDatabase.disableWriteAheadLogging();
+ mDatabase.execSQL("create table testRequery2 (i int);");
+ mDatabase.execSQL("insert into testRequery2 values(1);");
+ mDatabase.execSQL("insert into testRequery2 values(2);");
+ Cursor c = mDatabase.rawQuery("select * from testRequery2 order by i", null);
+ assertEquals(2, c.getCount());
+ assertTrue(c.moveToFirst());
+ assertEquals(1, c.getInt(0));
+ assertTrue(c.moveToNext());
+ assertEquals(2, c.getInt(0));
+ // add more data to the table and requery
+ mDatabase.execSQL("insert into testRequery2 values(3);");
+ assertTrue(c.requery());
+ assertEquals(3, c.getCount());
+ assertTrue(c.moveToFirst());
+ assertEquals(1, c.getInt(0));
+ assertTrue(c.moveToNext());
+ assertEquals(2, c.getInt(0));
+ assertTrue(c.moveToNext());
+ assertEquals(3, c.getInt(0));
+ // close the database and see if requery throws an exception
+ mDatabase.close();
+ try {
+ c.requery();
+ fail("expected IllegalStateException");
+ } catch (IllegalStateException e) {
+ // expected
+ }
+ }
+
+ @TestTargets({
+ @TestTargetNew(
+ level = TestLevel.COMPLETE,
method = "getColumnIndex",
args = {java.lang.String.class}
),
diff --git a/tests/tests/database/src/android/database/sqlite/cts/SQLiteDatabaseTest.java b/tests/tests/database/src/android/database/sqlite/cts/SQLiteDatabaseTest.java
index c81bd14..7fde45c 100644
--- a/tests/tests/database/src/android/database/sqlite/cts/SQLiteDatabaseTest.java
+++ b/tests/tests/database/src/android/database/sqlite/cts/SQLiteDatabaseTest.java
@@ -18,10 +18,7 @@
import java.io.File;
import java.util.ArrayList;
-import java.util.Iterator;
import java.util.Locale;
-import java.util.Map;
-import java.util.Set;
import android.content.ContentValues;
import android.database.Cursor;
@@ -340,78 +337,6 @@
}
}
- @SuppressWarnings("deprecation")
- @TestTargets({
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- notes = "Test getSyncedTables()",
- method = "getSyncedTables",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- notes = "Test markTableSyncable(String, String)",
- method = "markTableSyncable",
- args = {java.lang.String.class, java.lang.String.class}
- )
- })
- public void testGetSyncedTables() {
- mDatabase.execSQL("CREATE TABLE people (_id INTEGER PRIMARY KEY, name TEXT, "
- + "_sync_dirty INTEGER);");
- mDatabase.execSQL("CREATE TABLE _delete_people (name TEXT);");
- Map<String, String> tableMap = mDatabase.getSyncedTables();
- assertEquals(0, tableMap.size());
- mDatabase.markTableSyncable("people", "_delete_people");
- tableMap = mDatabase.getSyncedTables();
- assertEquals(1, tableMap.size());
- Set<String> keys = tableMap.keySet();
- Iterator<String> iterator = keys.iterator();
- assertTrue(iterator.hasNext());
- assertEquals("people", iterator.next());
- assertEquals("_delete_people", tableMap.get("people"));
- assertFalse(iterator.hasNext());
-
- // test sync
- mDatabase.execSQL("INSERT INTO people VALUES (0, 'foo', 0);");
- mDatabase.execSQL("UPDATE people SET name = 'updated' WHERE _id = 0;");
- Cursor c = mDatabase.query("people", new String[] {"_id", "_sync_dirty" },
- "_id = 0", null, null, null, null);
- assertTrue(c.moveToFirst());
- // _sync_dirty flag has been set
- assertEquals(1, c.getInt(1));
- c.close();
- }
-
- @SuppressWarnings("deprecation")
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- notes = "Test markTableSyncable(String, String, String)",
- method = "markTableSyncable",
- args = {java.lang.String.class, java.lang.String.class, java.lang.String.class}
- )
- public void testMarkTableSyncable() {
- mDatabase.execSQL("CREATE TABLE phone (_id INTEGER PRIMARY KEY, _people_id INTEGER, " +
- "name TEXT);");
- mDatabase.execSQL("CREATE TABLE people (_id INTEGER PRIMARY KEY, " +
- "name TEXT, _sync_dirty INTEGER);");
- mDatabase.markTableSyncable("phone", "_people_id", "people");
-
- Map<String, String> tableMap = mDatabase.getSyncedTables();
- // since no delete table was given, there is no mapping
- assertEquals(0, tableMap.size());
-
- // test sync
- mDatabase.execSQL("INSERT INTO people VALUES (13, 'foo', 0);");
- mDatabase.execSQL("INSERT INTO phone VALUES (0, 13, 'bar');");
- mDatabase.execSQL("UPDATE phone SET name = 'updated' WHERE _id = 0;");
- Cursor c = mDatabase.query("people", new String[] {"_id", "_sync_dirty" },
- "_id = 13", null, null, null, null);
- assertTrue(c.moveToFirst());
- // _sync_dirty flag has been set
- assertEquals(1, c.getInt(1));
- c.close();
- }
-
@TestTargets({
@TestTargetNew(
level = TestLevel.COMPLETE,