From c190dbfb784c0bca629b6966ce314d735cf98db3 Mon Sep 17 00:00:00 2001 From: Sunny Goyal Date: Thu, 5 May 2016 14:37:05 -0700 Subject: Adding full backup handler for launcher3 Bug: 28302573 Change-Id: If0889a3b00b88b134b19d7f790159dfafdcdb004 --- .../android/launcher3/LauncherBackupAgentTest.java | 74 ++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 tests/src/com/android/launcher3/LauncherBackupAgentTest.java (limited to 'tests') diff --git a/tests/src/com/android/launcher3/LauncherBackupAgentTest.java b/tests/src/com/android/launcher3/LauncherBackupAgentTest.java new file mode 100644 index 000000000..798f0c25d --- /dev/null +++ b/tests/src/com/android/launcher3/LauncherBackupAgentTest.java @@ -0,0 +1,74 @@ +package com.android.launcher3; + +import android.content.ContentValues; +import android.database.Cursor; +import android.database.sqlite.SQLiteDatabase; +import android.test.AndroidTestCase; +import android.test.suitebuilder.annotation.MediumTest; + +import com.android.launcher3.LauncherProvider.DatabaseHelper; +import com.android.launcher3.LauncherSettings.Favorites; + +/** + * Tests for {@link LauncherBackupAgent} + */ +@MediumTest +public class LauncherBackupAgentTest extends AndroidTestCase { + + public void testGetProfileId() throws Exception { + SQLiteDatabase db = new MyDatabaseHelper(23).getWritableDatabase(); + assertEquals(23, new LauncherBackupAgent().getDefaultProfileId(db)); + } + + public void testMigrateProfileId() throws Exception { + SQLiteDatabase db = new MyDatabaseHelper(42).getWritableDatabase(); + // Add some dummy data + for (int i = 0; i < 5; i++) { + ContentValues values = new ContentValues(); + values.put(Favorites._ID, i); + values.put(Favorites.TITLE, "item " + i); + db.insert(Favorites.TABLE_NAME, null, values); + } + // Verify item add + assertEquals(5, getCount(db, "select * from favorites where profileId = 42")); + + new LauncherBackupAgent().migrateProfileId(db, 33); + + // verify data migrated + assertEquals(0, getCount(db, "select * from favorites where profileId = 42")); + assertEquals(5, getCount(db, "select * from favorites where profileId = 33")); + + // Verify default value changed + ContentValues values = new ContentValues(); + values.put(Favorites._ID, 100); + values.put(Favorites.TITLE, "item 100"); + db.insert(Favorites.TABLE_NAME, null, values); + assertEquals(6, getCount(db, "select * from favorites where profileId = 33")); + } + + private int getCount(SQLiteDatabase db, String sql) { + Cursor c = db.rawQuery(sql, null); + try { + return c.getCount(); + } finally { + c.getCount(); + } + } + + private class MyDatabaseHelper extends DatabaseHelper { + + private final long mProfileId; + + public MyDatabaseHelper(long profileId) { + super(getContext(), null, null, null); + mProfileId = profileId; + } + + @Override + public long getDefaultUserSerial() { + return mProfileId; + } + + protected void onEmptyDbCreated() { } + } +} -- cgit v1.2.3