diff options
Diffstat (limited to 'tests/src/com/android/browser/tests/BP2UriObserverTests.java')
-rw-r--r-- | tests/src/com/android/browser/tests/BP2UriObserverTests.java | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/tests/src/com/android/browser/tests/BP2UriObserverTests.java b/tests/src/com/android/browser/tests/BP2UriObserverTests.java new file mode 100644 index 0000000..28b3ec9 --- /dev/null +++ b/tests/src/com/android/browser/tests/BP2UriObserverTests.java @@ -0,0 +1,103 @@ +/* + * Copyright (C) 2011 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.browser.tests; + +import com.android.browser.tests.utils.BP2TestCaseHelper; + +import android.content.ContentValues; +import android.graphics.Bitmap; +import android.graphics.Bitmap.Config; +import android.net.Uri; +import android.provider.BrowserContract.Bookmarks; +import android.provider.BrowserContract.History; + +import java.io.ByteArrayOutputStream; + +public class BP2UriObserverTests extends BP2TestCaseHelper { + + public void testInsertBookmark() { + Uri insertedUri = insertBookmark("http://stub1.com", "Stub1"); + TriggeredObserver stubObs = new TriggeredObserver(insertedUri); + assertObserversTriggered(false, stubObs); + insertBookmark("http://stub2.com", "Stub2"); + perfIdeallyUntriggered(stubObs); + } + + public void testUpdateBookmark() { + Uri toUpdate = insertBookmark("http://stub1.com", "Stub1"); + Uri unchanged = insertBookmark("http://stub2.com", "Stub2"); + TriggeredObserver updateObs = new TriggeredObserver(toUpdate); + TriggeredObserver unchangedObs = new TriggeredObserver(unchanged); + assertObserversTriggered(false, updateObs, unchangedObs); + assertTrue(updateBookmark(toUpdate, "http://stub1.com", "Stub1: Revenge of the stubs")); + assertTrue("Update observer not notified!", updateObs.checkTriggered()); + perfIdeallyUntriggered(unchangedObs); + } + + public void testUpdateBookmarkImages() { + Uri toUpdate = insertBookmark("http://stub1.com", "Stub1"); + Uri unchanged = insertBookmark("http://stub2.com", "Stub2"); + Bitmap favicon = Bitmap.createBitmap(16, 16, Config.ARGB_8888); + ByteArrayOutputStream os = new ByteArrayOutputStream(); + favicon.compress(Bitmap.CompressFormat.PNG, 100, os); + byte[] rawFavicon = os.toByteArray(); + ContentValues values = new ContentValues(); + values.put(Bookmarks.FAVICON, rawFavicon); + values.put(Bookmarks.TITLE, "Stub1"); + TriggeredObserver updateObs = new TriggeredObserver(toUpdate); + TriggeredObserver unchangedObs = new TriggeredObserver(unchanged); + assertTrue(updateBookmark(toUpdate, values)); + assertTrue("Update observer not notified!", updateObs.checkTriggered()); + perfIdeallyUntriggered(unchangedObs); + } + + public void testInsertHistory() { + Uri insertedUri = insertHistory("http://stub1.com", "Stub1"); + TriggeredObserver stubObs = new TriggeredObserver(insertedUri); + assertObserversTriggered(false, stubObs); + insertHistory("http://stub2.com", "Stub2"); + perfIdeallyUntriggered(stubObs); + } + + public void testUpdateHistory() { + Uri toUpdate = insertHistory("http://stub1.com", "Stub1"); + Uri unchanged = insertHistory("http://stub2.com", "Stub2"); + TriggeredObserver updateObs = new TriggeredObserver(toUpdate); + TriggeredObserver unchangedObs = new TriggeredObserver(unchanged); + assertObserversTriggered(false, updateObs, unchangedObs); + assertTrue(updateHistory(toUpdate, "http://stub1.com", "Stub1: Revenge of the stubs")); + assertTrue("Update observer not notified!", updateObs.checkTriggered()); + perfIdeallyUntriggered(unchangedObs); + } + + public void testUpdateHistoryImages() { + Uri toUpdate = insertHistory("http://stub1.com", "Stub1"); + Uri unchanged = insertHistory("http://stub2.com", "Stub2"); + Bitmap favicon = Bitmap.createBitmap(16, 16, Config.ARGB_8888); + ByteArrayOutputStream os = new ByteArrayOutputStream(); + favicon.compress(Bitmap.CompressFormat.PNG, 100, os); + byte[] rawFavicon = os.toByteArray(); + ContentValues values = new ContentValues(); + values.put(History.FAVICON, rawFavicon); + values.put(History.TITLE, "Stub1"); + TriggeredObserver updateObs = new TriggeredObserver(toUpdate); + TriggeredObserver unchangedObs = new TriggeredObserver(unchanged); + assertTrue(updateHistory(toUpdate, values)); + assertTrue("Update observer not notified!", updateObs.checkTriggered()); + perfIdeallyUntriggered(unchangedObs); + } +} |