10825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville/* 20825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Copyright (C) 2010, The Android Open Source Project 30825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 40825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Licensed under the Apache License, Version 2.0 (the "License"); 50825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * you may not use this file except in compliance with the License. 60825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * You may obtain a copy of the License at 70825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 80825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * http://www.apache.org/licenses/LICENSE-2.0 90825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unless required by applicable law or agreed to in writing, software 110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * distributed under the License is distributed on an "AS IS" BASIS, 120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * See the License for the specific language governing permissions and 140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * limitations under the License. 150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 170825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepackage com.android.frameworks.telephonytests; 180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 190825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.Bundle; 200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 210825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.test.InstrumentationTestRunner; 220825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.test.InstrumentationTestSuite; 230825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.util.Log; 240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 250825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport java.io.IOException; 260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 270825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport com.android.internal.telephony.RilChannel; 280825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport com.android.internal.telephony.mockril.MockRilTest; 290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 300825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport junit.framework.TestSuite; 310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 320825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepublic class TelephonyMockRilTestRunner extends InstrumentationTestRunner { 330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public RilChannel mMockRilChannel; 350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville @Override 370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public TestSuite getAllTests() { 380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville log("getAllTests E"); 390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville TestSuite suite = new InstrumentationTestSuite(this); 400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville suite.addTestSuite(MockRilTest.class); 410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville log("getAllTests X"); 420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return suite; 430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville @Override 460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public ClassLoader getLoader() { 470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville log("getLoader EX"); 480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville return TelephonyMockRilTestRunner.class.getClassLoader(); 490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville @Override 520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void onCreate(Bundle icicle) { 530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville log("onCreate E"); 540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville try { 550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mMockRilChannel = RilChannel.makeRilChannel(); 560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } catch (IOException e) { 570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // TODO Auto-generated catch block 580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville e.printStackTrace(); 590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville log("onCreate X"); 610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville super.onCreate(icicle); 630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville @Override 660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void onDestroy() { 670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // I've not seen this called 680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville log("onDestroy EX"); 690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville super.onDestroy(); 700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville @Override 730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void onStart() { 740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Called when the instrumentation thread is started. 750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // At the moment we don't need the thread so return 760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // which will shut down this unused thread. 770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville log("onStart EX"); 780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville super.onStart(); 790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville @Override 820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void finish(int resultCode, Bundle results) { 830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Called when complete so I ask the mMockRilChannel to quit. 840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville log("finish E"); 850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville mMockRilChannel.close(); 860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville log("finish X"); 870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville super.finish(resultCode, results); 880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville private void log(String s) { 910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Log.e("TelephonyMockRilTestRunner", s); 920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville } 930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville} 94