Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5e365d35 authored by Jason Chiu's avatar Jason Chiu
Browse files

Add a config to control whether SettingsIntelligence supports Slice

Fix: 240371240
Test: manual, robotest
Change-Id: Iddb08b521011a5e5134b8358a135cefb34809371
parent 380dc18c
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -257,6 +257,9 @@
    <!-- Settings intelligence interaction log intent action -->
    <string name="config_settingsintelligence_log_action" translatable="false"></string>

    <!-- Whether Settings intelligence supports presenting Slices. -->
    <bool name="config_settingsintelligence_slice_supported">false</bool>

    <!-- AOSP Emergency app package name -->
    <string name="config_aosp_emergency_package_name" translatable="false">
        com.android.emergency
+5 −0
Original line number Diff line number Diff line
@@ -65,6 +65,11 @@ public class FlashlightHandleActivity extends Activity implements Indexable {
                        boolean enabled) {

                    final List<SearchIndexableRaw> result = new ArrayList<>();
                    if (!context.getResources().getBoolean(
                            R.bool.config_settingsintelligence_slice_supported)) {
                        Log.d(TAG, "Search doesn't support Slice");
                        return result;
                    }

                    SearchIndexableRaw data = new SearchIndexableRaw(context);
                    data.title = context.getString(R.string.power_flashlight);
+1 −0
Original line number Diff line number Diff line
@@ -69,6 +69,7 @@
    <bool name="config_show_branded_account_in_device_info">false</bool>
    <bool name="config_show_emergency_info_in_device_info">false</bool>
    <bool name="config_show_smooth_display">false</bool>
    <bool name="config_settingsintelligence_slice_supported">true</bool>

    <!-- Whether or not extra preview panels should be used for screen zoom setting. -->
    <bool name="config_enable_extra_screen_zoom_preview">false</bool>
+60 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2022 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.settings.flashlight;

import static com.google.common.truth.Truth.assertThat;

import android.content.Context;

import com.android.settingslib.search.SearchIndexableRaw;

import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;

import java.util.List;

@RunWith(RobolectricTestRunner.class)
public class FlashlightHandleActivityTest {

    private Context mContext;

    @Before
    public void setUp() {
        mContext = RuntimeEnvironment.application;
    }

    @Test
    public void getRawDataToIndex_sliceNotSupported_returnEmptyData() {
        List<SearchIndexableRaw> data = FlashlightHandleActivity.SEARCH_INDEX_DATA_PROVIDER
                .getRawDataToIndex(mContext, true /* enabled */);

        assertThat(data).isEmpty();
    }

    @Test
    @Config(qualifiers = "mcc999")
    public void getRawDataToIndex_sliceSupported_returnData() {
        List<SearchIndexableRaw> data = FlashlightHandleActivity.SEARCH_INDEX_DATA_PROVIDER
                .getRawDataToIndex(mContext, true /* enabled */);

        assertThat(data).isNotEmpty();
    }
}
+0 −2
Original line number Diff line number Diff line
@@ -12,7 +12,6 @@
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 */

package com.android.settings.flashlight;
@@ -38,7 +37,6 @@ import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.Shadows;
import org.robolectric.annotation.Config;
import org.robolectric.shadow.api.Shadow;
import org.robolectric.shadows.ShadowCameraCharacteristics;
import org.robolectric.shadows.ShadowCameraManager;