1fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang/* 2fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * Copyright (C) 2010, The Android Open Source Project 3fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * 4fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * Licensed under the Apache License, Version 2.0 (the "License"); 5fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * you may not use this file except in compliance with the License. 6fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * You may obtain a copy of the License at 7fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * 8fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * http://www.apache.org/licenses/LICENSE-2.0 9fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * 10fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * Unless required by applicable law or agreed to in writing, software 11fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * distributed under the License is distributed on an "AS IS" BASIS, 12fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * See the License for the specific language governing permissions and 14fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * limitations under the License. 15fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang */ 16fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang 17fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wangpackage com.android.connectivitymanagertest; 18fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang 19fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wangimport android.os.Bundle; 20fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wangimport android.test.InstrumentationTestRunner; 21fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wangimport android.test.InstrumentationTestSuite; 22b97435c94f4d35a70d63e5dcba5415b0110cf2c9Xia Wang 23fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wangimport com.android.connectivitymanagertest.functional.ConnectivityManagerMobileTest; 24ca1f2b1a1e8cb785be5ebbcf7ded7c921cbf80a7Xia Wangimport com.android.connectivitymanagertest.functional.WifiConnectionTest; 25fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang 26fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wangimport junit.framework.TestSuite; 27fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang 28fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang/** 29fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * Instrumentation Test Runner for all connectivity manager tests. 30fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * 31fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * To run the connectivity manager tests: 32fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * 33fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * adb shell am instrument -e ssid <ssid> \ 34fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang * -w com.android.connectivitymanagertest/.ConnectivityManagerTestRunner 35fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang */ 36fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang 37fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wangpublic class ConnectivityManagerTestRunner extends InstrumentationTestRunner { 3886e15557c52e2847d2adc8495a281dcf0239506eEric Rowe public boolean mWifiOnly = false; 3986e15557c52e2847d2adc8495a281dcf0239506eEric Rowe public String mSsid = null; 4086e15557c52e2847d2adc8495a281dcf0239506eEric Rowe public String mPassword = null; 41b97435c94f4d35a70d63e5dcba5415b0110cf2c9Xia Wang 42fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang @Override 43fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang public TestSuite getAllTests() { 44fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang TestSuite suite = new InstrumentationTestSuite(this); 45776cca3b3a84cd16bdaccdd43963cc34d923e0a4Xia Wang suite.addTestSuite(ConnectivityManagerMobileTest.class); 46ca1f2b1a1e8cb785be5ebbcf7ded7c921cbf80a7Xia Wang suite.addTestSuite(WifiConnectionTest.class); 47fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang return suite; 48fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang } 49fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang 50fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang @Override 51fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang public ClassLoader getLoader() { 52fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang return ConnectivityManagerTestRunner.class.getClassLoader(); 53fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang } 54fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang 55fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang @Override 56fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang public void onCreate(Bundle icicle) { 57fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang super.onCreate(icicle); 5886e15557c52e2847d2adc8495a281dcf0239506eEric Rowe String ssid = icicle.getString("ssid"); 5986e15557c52e2847d2adc8495a281dcf0239506eEric Rowe if (ssid != null) { 6086e15557c52e2847d2adc8495a281dcf0239506eEric Rowe mSsid = ssid; 6186e15557c52e2847d2adc8495a281dcf0239506eEric Rowe } 6286e15557c52e2847d2adc8495a281dcf0239506eEric Rowe String password = (String) icicle.get("password"); 6386e15557c52e2847d2adc8495a281dcf0239506eEric Rowe if (password != null) { 6486e15557c52e2847d2adc8495a281dcf0239506eEric Rowe mPassword = password; 65776cca3b3a84cd16bdaccdd43963cc34d923e0a4Xia Wang } 66776cca3b3a84cd16bdaccdd43963cc34d923e0a4Xia Wang String wifiOnlyFlag = (String) icicle.get("wifi-only"); 67776cca3b3a84cd16bdaccdd43963cc34d923e0a4Xia Wang if (wifiOnlyFlag != null) { 6886e15557c52e2847d2adc8495a281dcf0239506eEric Rowe mWifiOnly = true; 69fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang } 70fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang } 7186e15557c52e2847d2adc8495a281dcf0239506eEric Rowe 7286e15557c52e2847d2adc8495a281dcf0239506eEric Rowe public String getWifiSsid() { 7386e15557c52e2847d2adc8495a281dcf0239506eEric Rowe return mSsid; 7486e15557c52e2847d2adc8495a281dcf0239506eEric Rowe } 7586e15557c52e2847d2adc8495a281dcf0239506eEric Rowe 7686e15557c52e2847d2adc8495a281dcf0239506eEric Rowe public String getWifiPassword() { 7786e15557c52e2847d2adc8495a281dcf0239506eEric Rowe return mPassword; 7886e15557c52e2847d2adc8495a281dcf0239506eEric Rowe } 7986e15557c52e2847d2adc8495a281dcf0239506eEric Rowe 8086e15557c52e2847d2adc8495a281dcf0239506eEric Rowe public boolean isWifiOnly() { 8186e15557c52e2847d2adc8495a281dcf0239506eEric Rowe return mWifiOnly; 8286e15557c52e2847d2adc8495a281dcf0239506eEric Rowe } 83fc2dbd04005c32360eead803e29df3cc62209cd8Xia Wang} 84