SuggestionCursorUtil.java revision 72f9b08ce84d0e13daf2d1c112d4e6d1d3ada045
172f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert/* 272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * Copyright (C) 2010 The Android Open Source Project 372f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * 472f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * Licensed under the Apache License, Version 2.0 (the "License"); 572f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * you may not use this file except in compliance with the License. 672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * You may obtain a copy of the License at 772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * 872f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * http://www.apache.org/licenses/LICENSE-2.0 972f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * 1072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * Unless required by applicable law or agreed to in writing, software 1172f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * distributed under the License is distributed on an "AS IS" BASIS, 1272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1372f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * See the License for the specific language governing permissions and 1472f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * limitations under the License. 1572f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert */ 1672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert 1772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringertpackage com.android.quicksearchbox; 1872f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert 1972f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringertimport junit.framework.Assert; 2072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert 2172f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert/** 2272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * Test utilities for {@link ShortcutCursor}. 2372f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert */ 2472f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringertpublic class SuggestionCursorUtil extends Assert { 2572f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert 2672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert public static void assertNoSuggestions(SuggestionCursor suggestions) { 2772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertNoSuggestions("", suggestions); 2872f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert } 2972f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert 3072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert public static void assertNoSuggestions(String message, SuggestionCursor suggestions) { 3172f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertNotNull(suggestions); 3272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message, 0, suggestions.getCount()); 3372f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert } 3472f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert 3572f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert public static void assertSameSuggestion(String message, int position, 3672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert SuggestionCursor expected, SuggestionCursor observed) { 3772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert message += " at position " + position; 3872f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert expected.moveTo(position); 3972f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.moveTo(position); 4072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", source", expected.getSuggestionSource(), 4172f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionSource()); 4272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", shortcutId", expected.getShortcutId(), 4372f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getShortcutId()); 4472f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", spinnerWhileRefreshing", expected.isSpinnerWhileRefreshing(), 4572f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.isSpinnerWhileRefreshing()); 4672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", format", expected.getSuggestionFormat(), 4772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionFormat()); 4872f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", icon1", expected.getSuggestionIcon1(), 4972f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionIcon1()); 5072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", icon2", expected.getSuggestionIcon2(), 5172f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionIcon2()); 5272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", text1", expected.getSuggestionText1(), 5372f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionText1()); 5472f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", text2", expected.getSuggestionText2(), 5572f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionText2()); 5672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", text2Url", expected.getSuggestionText2Url(), 5772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionText2Url()); 5872f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", action", expected.getSuggestionIntentAction(), 5972f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionIntentAction()); 6072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", data", expected.getSuggestionIntentDataString(), 6172f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionIntentDataString()); 6272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", extraData", expected.getSuggestionIntentExtraData(), 6372f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionIntentExtraData()); 6472f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", query", expected.getSuggestionQuery(), 6572f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionQuery()); 6672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", displayQuery", expected.getSuggestionDisplayQuery(), 6772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionDisplayQuery()); 6872f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", logType", expected.getSuggestionLogType(), 6972f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert observed.getSuggestionLogType()); 7072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert } 7172f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert 7272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert public static void assertSameSuggestions(SuggestionCursor expected, SuggestionCursor observed) { 7372f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertSameSuggestions("", expected, observed); 7472f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert } 7572f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert 7672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert public static void assertSameSuggestions( 7772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert String message, SuggestionCursor expected, SuggestionCursor observed) { 7872f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertNotNull(expected); 7972f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertNotNull(message, observed); 8072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", count", expected.getCount(), observed.getCount()); 8172f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertEquals(message + ", userQuery", expected.getUserQuery(), observed.getUserQuery()); 8272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert int count = expected.getCount(); 8372f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert for (int i = 0; i < count; i++) { 8472f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert assertSameSuggestion(message, i, expected, observed); 8572f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert } 8672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert } 8772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert 8872f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert} 89