155a97a9ad44407250e68a2805d89606768160922jackqdyulei/* 255a97a9ad44407250e68a2805d89606768160922jackqdyulei * Copyright (C) 2017 The Android Open Source Project 355a97a9ad44407250e68a2805d89606768160922jackqdyulei * 455a97a9ad44407250e68a2805d89606768160922jackqdyulei * Licensed under the Apache License, Version 2.0 (the "License"); 555a97a9ad44407250e68a2805d89606768160922jackqdyulei * you may not use this file except in compliance with the License. 655a97a9ad44407250e68a2805d89606768160922jackqdyulei * You may obtain a copy of the License at 755a97a9ad44407250e68a2805d89606768160922jackqdyulei * 855a97a9ad44407250e68a2805d89606768160922jackqdyulei * http://www.apache.org/licenses/LICENSE-2.0 955a97a9ad44407250e68a2805d89606768160922jackqdyulei * 1055a97a9ad44407250e68a2805d89606768160922jackqdyulei * Unless required by applicable law or agreed to in writing, software 1155a97a9ad44407250e68a2805d89606768160922jackqdyulei * distributed under the License is distributed on an "AS IS" BASIS, 1255a97a9ad44407250e68a2805d89606768160922jackqdyulei * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1355a97a9ad44407250e68a2805d89606768160922jackqdyulei * See the License for the specific language governing permissions and 1455a97a9ad44407250e68a2805d89606768160922jackqdyulei * limitations under the License. 1555a97a9ad44407250e68a2805d89606768160922jackqdyulei */ 1655a97a9ad44407250e68a2805d89606768160922jackqdyulei 1755a97a9ad44407250e68a2805d89606768160922jackqdyuleipackage com.android.settings.fuelgauge.anomaly; 1855a97a9ad44407250e68a2805d89606768160922jackqdyulei 1955a97a9ad44407250e68a2805d89606768160922jackqdyuleiimport static com.google.common.truth.Truth.assertThat; 2055a97a9ad44407250e68a2805d89606768160922jackqdyulei 2155a97a9ad44407250e68a2805d89606768160922jackqdyuleiimport android.content.Context; 2255a97a9ad44407250e68a2805d89606768160922jackqdyulei 239f1e911759dc6fedaac9fa65afb79f6a93022bf4Andrew Sappersteinimport com.android.settings.testutils.SettingsRobolectricTestRunner; 2455a97a9ad44407250e68a2805d89606768160922jackqdyuleiimport com.android.settings.TestConfig; 2555a97a9ad44407250e68a2805d89606768160922jackqdyulei 2655a97a9ad44407250e68a2805d89606768160922jackqdyuleiimport org.junit.Before; 2755a97a9ad44407250e68a2805d89606768160922jackqdyuleiimport org.junit.Test; 2855a97a9ad44407250e68a2805d89606768160922jackqdyuleiimport org.junit.runner.RunWith; 2955a97a9ad44407250e68a2805d89606768160922jackqdyuleiimport org.mockito.MockitoAnnotations; 3055a97a9ad44407250e68a2805d89606768160922jackqdyuleiimport org.robolectric.RuntimeEnvironment; 3155a97a9ad44407250e68a2805d89606768160922jackqdyuleiimport org.robolectric.annotation.Config; 3255a97a9ad44407250e68a2805d89606768160922jackqdyulei 3355a97a9ad44407250e68a2805d89606768160922jackqdyulei@RunWith(SettingsRobolectricTestRunner.class) 3455a97a9ad44407250e68a2805d89606768160922jackqdyulei@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) 3555a97a9ad44407250e68a2805d89606768160922jackqdyuleipublic class AnomalyPreferenceTest { 3655a97a9ad44407250e68a2805d89606768160922jackqdyulei @Anomaly.AnomalyType 3755a97a9ad44407250e68a2805d89606768160922jackqdyulei private static final int ANOMALY_TYPE = Anomaly.AnomalyType.WAKE_LOCK; 3855a97a9ad44407250e68a2805d89606768160922jackqdyulei private static final String PACKAGE_NAME = "com.android.app"; 3955a97a9ad44407250e68a2805d89606768160922jackqdyulei private static final String DISPLAY_NAME = "app"; 4055a97a9ad44407250e68a2805d89606768160922jackqdyulei private static final int UID = 111; 4155a97a9ad44407250e68a2805d89606768160922jackqdyulei 4255a97a9ad44407250e68a2805d89606768160922jackqdyulei private Context mContext; 4355a97a9ad44407250e68a2805d89606768160922jackqdyulei private Anomaly mAnomaly; 4455a97a9ad44407250e68a2805d89606768160922jackqdyulei private AnomalyPreference mAnomalyPreference; 4555a97a9ad44407250e68a2805d89606768160922jackqdyulei 4655a97a9ad44407250e68a2805d89606768160922jackqdyulei @Before 4755a97a9ad44407250e68a2805d89606768160922jackqdyulei public void setUp() { 4855a97a9ad44407250e68a2805d89606768160922jackqdyulei MockitoAnnotations.initMocks(this); 4955a97a9ad44407250e68a2805d89606768160922jackqdyulei 5055a97a9ad44407250e68a2805d89606768160922jackqdyulei mContext = RuntimeEnvironment.application; 5155a97a9ad44407250e68a2805d89606768160922jackqdyulei 5255a97a9ad44407250e68a2805d89606768160922jackqdyulei mAnomaly = new Anomaly.Builder() 5355a97a9ad44407250e68a2805d89606768160922jackqdyulei .setType(ANOMALY_TYPE) 5455a97a9ad44407250e68a2805d89606768160922jackqdyulei .setPackageName(PACKAGE_NAME) 5555a97a9ad44407250e68a2805d89606768160922jackqdyulei .setDisplayName(DISPLAY_NAME) 5655a97a9ad44407250e68a2805d89606768160922jackqdyulei .setUid(UID) 5755a97a9ad44407250e68a2805d89606768160922jackqdyulei .build(); 5855a97a9ad44407250e68a2805d89606768160922jackqdyulei } 5955a97a9ad44407250e68a2805d89606768160922jackqdyulei 6055a97a9ad44407250e68a2805d89606768160922jackqdyulei @Test 6155a97a9ad44407250e68a2805d89606768160922jackqdyulei public void testAnomalyPreference_containsCorrectData() { 6255a97a9ad44407250e68a2805d89606768160922jackqdyulei mAnomalyPreference = new AnomalyPreference(mContext, mAnomaly); 6355a97a9ad44407250e68a2805d89606768160922jackqdyulei 6455a97a9ad44407250e68a2805d89606768160922jackqdyulei assertThat(mAnomalyPreference.getTitle()).isEqualTo(DISPLAY_NAME); 6555a97a9ad44407250e68a2805d89606768160922jackqdyulei } 6655a97a9ad44407250e68a2805d89606768160922jackqdyulei} 67