15a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo/* 25a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * Copyright (C) 2011 The Android Open Source Project 35a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * 45a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * Licensed under the Apache License, Version 2.0 (the "License"); 55a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * you may not use this file except in compliance with the License. 65a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * You may obtain a copy of the License at 75a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * 85a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * http://www.apache.org/licenses/LICENSE-2.0 95a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * 105a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * Unless required by applicable law or agreed to in writing, software 115a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * distributed under the License is distributed on an "AS IS" BASIS, 125a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 135a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * See the License for the specific language governing permissions and 145a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * limitations under the License. 155a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo */ 165a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 175a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugopackage com.android.emailcommon.provider; 185a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 195a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugoimport android.content.Context; 205a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugoimport android.os.Parcel; 215a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugoimport android.test.ProviderTestCase2; 225a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugoimport android.test.suitebuilder.annotation.SmallTest; 235a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 246e418aa41a17136be0dddb816d843428a0a1e722Marc Blankimport com.android.email.provider.ContentCache; 256e418aa41a17136be0dddb816d843428a0a1e722Marc Blankimport com.android.email.provider.EmailProvider; 265a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 275a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo/** 285a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo * Unit tests for the QuickResponse class 295a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo */ 305a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo@SmallTest 315a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugopublic class QuickResponseTests extends ProviderTestCase2<EmailProvider> { 325a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo private Context mMockContext; 335a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo private EmailProvider mProvider; 345a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 355a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo public QuickResponseTests() { 365a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo super(EmailProvider.class, EmailContent.AUTHORITY); 375a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo } 385a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 395a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo @Override 405a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo public void setUp() throws Exception { 415a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo super.setUp(); 425a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo mMockContext = getMockContext(); 435a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo mProvider = getProvider(); 445a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo // Invalidate all caches, since we reset the database for each test 456e418aa41a17136be0dddb816d843428a0a1e722Marc Blank ContentCache.invalidateAllCaches(); 465a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo } 475a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 485a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo public void testParcelling() { 495a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo QuickResponse original = new QuickResponse(7, "quick response text"); 505a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 515a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo Parcel p = Parcel.obtain(); 525a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo original.writeToParcel(p, 0); 535a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 545a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo // Reset. 555a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo p.setDataPosition(0); 565a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 575a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo QuickResponse unparcelled = QuickResponse.CREATOR.createFromParcel(p); 585a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo assert(original.equals(unparcelled)); 595a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 605a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo QuickResponse phony = new QuickResponse(17, "quick response text"); 615a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo assert(!(phony.equals(unparcelled))); 625a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 635a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo QuickResponse phony2 = new QuickResponse(7, "different text"); 645a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo assert(!(phony2.equals(unparcelled))); 655a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 665a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo p.recycle(); 675a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo } 685a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo} 695a3888f35b669ffb3cc785d7dfe4862879a3896cJorge Lugo 70