• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2021 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 package com.android.settings.accessibility;
17 
18 import static org.mockito.ArgumentMatchers.any;
19 import static org.mockito.Mockito.mock;
20 import static org.mockito.Mockito.times;
21 import static org.mockito.Mockito.verify;
22 
23 import android.content.Context;
24 import android.graphics.drawable.Drawable;
25 
26 import androidx.test.core.app.ApplicationProvider;
27 
28 import com.google.android.setupdesign.GlifPreferenceLayout;
29 
30 import org.junit.Test;
31 import org.junit.runner.RunWith;
32 import org.robolectric.RobolectricTestRunner;
33 
34 /** Tests for {@link AccessibilitySetupWizardUtils} */
35 @RunWith(RobolectricTestRunner.class)
36 public class AccessibilitySetupWizardUtilsTest {
37 
38     private final Context mContext = ApplicationProvider.getApplicationContext();
39 
40     @Test
setupGlifPreferenceLayout_assignValueToVariable()41     public void setupGlifPreferenceLayout_assignValueToVariable() {
42         final String title = "title";
43         final String description = "description";
44         final Drawable icon = mock(Drawable.class);
45         GlifPreferenceLayout layout = mock(GlifPreferenceLayout.class);
46 
47         AccessibilitySetupWizardUtils.updateGlifPreferenceLayout(mContext, layout, title,
48                 description, icon);
49 
50         verify(layout).setHeaderText(title);
51         verify(layout).setDescriptionText(description);
52         verify(layout).setIcon(icon);
53         verify(layout).setHeaderText(title);
54     }
55 
56     @Test
setupGlifPreferenceLayout_descriptionIsNull_doesNotCallSetDescriptionText()57     public void setupGlifPreferenceLayout_descriptionIsNull_doesNotCallSetDescriptionText() {
58         GlifPreferenceLayout layout = mock(GlifPreferenceLayout.class);
59 
60         AccessibilitySetupWizardUtils.updateGlifPreferenceLayout(mContext, layout, "title",
61                 /* description= */ null, /* icon= */ null);
62 
63         verify(layout, times(0)).setDescriptionText(any());
64     }
65 }
66