1 /*
2  * Copyright (C) 2015 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.telephony.cts;
18 
19 import android.content.Intent;
20 import android.os.PersistableBundle;
21 import android.service.carrier.CarrierIdentifier;
22 import android.service.carrier.CarrierService;
23 import android.test.ServiceTestCase;
24 
25 public class CarrierServiceTest extends ServiceTestCase<CarrierServiceTest.TestCarrierService> {
CarrierServiceTest()26     public CarrierServiceTest() { super(TestCarrierService.class); }
27 
testNotifyCarrierNetworkChange_true()28     public void testNotifyCarrierNetworkChange_true() {
29         notifyCarrierNetworkChange(true);
30     }
31 
testNotifyCarrierNetworkChange_false()32     public void testNotifyCarrierNetworkChange_false() {
33         notifyCarrierNetworkChange(false);
34     }
35 
notifyCarrierNetworkChange(boolean active)36     private void notifyCarrierNetworkChange(boolean active) {
37         Intent intent = new Intent(getContext(), TestCarrierService.class);
38         startService(intent);
39 
40         try {
41             getService().notifyCarrierNetworkChange(active);
42             fail("Expected SecurityException for notifyCarrierNetworkChange(" + active + ")");
43         } catch (SecurityException e) { /* Expected */ }
44     }
45 
46     public static class TestCarrierService extends CarrierService {
47         @Override
onLoadConfig(CarrierIdentifier id)48         public PersistableBundle onLoadConfig(CarrierIdentifier id) { return null; }
49     }
50 }
51