140ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen/* 240ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * Copyright (C) 2010, The Android Open Source Project 340ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * 440ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * Licensed under the Apache License, Version 2.0 (the "License"); 540ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * you may not use this file except in compliance with the License. 640ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * You may obtain a copy of the License at 740ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * 840ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * http://www.apache.org/licenses/LICENSE-2.0 940ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * 1040ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * Unless required by applicable law or agreed to in writing, software 1140ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * distributed under the License is distributed on an "AS IS" BASIS, 1240ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1340ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * See the License for the specific language governing permissions and 1440ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * limitations under the License. 1540ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen */ 1640ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen 1740ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyenpackage com.android.frameworks.downloadmanagertests; 1840ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen 1940ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyenimport android.os.Bundle; 2040ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyenimport android.test.InstrumentationTestRunner; 2140ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyenimport android.test.InstrumentationTestSuite; 2240ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyenimport android.util.Log; 2340ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen 2440ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyenimport com.android.frameworks.downloadmanagertests.DownloadManagerTestApp; 2540ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen 2640ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyenimport junit.framework.TestSuite; 2740ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen 2840ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen/** 2940ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * Instrumentation Test Runner for all download manager tests. 3040ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * 3140ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * To run the download manager tests: 3240ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * 33df7a865bbf45b57c60d294d5ac721e67e69a2dd6Neal Nguyen * adb shell am instrument -e external_download_uri <uri> external_large_download_uri <uri> \ 3440ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen * -w com.android.frameworks.downloadmanagertests/.DownloadManagerTestRunner 3540ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen */ 3640ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen 3740ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyenpublic class DownloadManagerTestRunner extends InstrumentationTestRunner { 3840ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen private static final String EXTERNAL_DOWNLOAD_URI_KEY = "external_download_uri"; 3940ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen public String externalDownloadUriValue = null; 4040ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen 4140ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen @Override 4240ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen public TestSuite getAllTests() { 4340ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen TestSuite suite = new InstrumentationTestSuite(this); 4440ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen suite.addTestSuite(DownloadManagerTestApp.class); 4540ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen return suite; 4640ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen } 4740ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen 4840ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen @Override 4940ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen public ClassLoader getLoader() { 5040ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen return DownloadManagerTestRunner.class.getClassLoader(); 5140ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen } 5240ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen 5340ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen @Override 5440ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen public void onCreate(Bundle icicle) { 5540ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen // Extract the extra params passed in from the bundle... 5640ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen String externalDownloadUri = (String) icicle.get(EXTERNAL_DOWNLOAD_URI_KEY); 5740ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen if (externalDownloadUri != null) { 5840ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen externalDownloadUriValue = externalDownloadUri; 5940ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen } 6040ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen super.onCreate(icicle); 6140ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen } 6240ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen 6340ef0f49ea9fa7c39eb0018fdb4df4b73a11a77dNeal Nguyen} 64