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

Commit 58019a84 authored by Matthew Fritze's avatar Matthew Fritze Committed by android-build-merger
Browse files

Merge "Fix bluetooth search result no-op" into pi-dev am: f14bfcbf

am: 9cb3dd12

Change-Id: Ib35794ec9c9e71c53145f418629287fd72d9adc6
parents 0b5f345e 9cb3dd12
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -42,6 +42,8 @@ public class AdvancedConnectedDeviceDashboardFragment extends DashboardFragment

    private static final String TAG = "AdvancedConnectedDeviceFrag";

    static final String KEY_BLUETOOTH = "bluetooth_settings";

    @Override
    public int getMetricsCategory() {
        return MetricsProto.MetricsEvent.CONNECTION_DEVICE_ADVANCED;
@@ -106,6 +108,9 @@ public class AdvancedConnectedDeviceDashboardFragment extends DashboardFragment
                        keys.add(AndroidBeamPreferenceController.KEY_ANDROID_BEAM_SETTINGS);
                    }

                    // Parent duplicate
                    keys.add(KEY_BLUETOOTH);

                    return keys;
                }

+2 −9
Original line number Diff line number Diff line
@@ -111,17 +111,10 @@ public class BluetoothDashboardFragment extends DashboardFragment {
                    final List<SearchIndexableRaw> result = new ArrayList<>();

                    // Add the activity title
                    SearchIndexableRaw data = new SearchIndexableRaw(context);
                    final SearchIndexableRaw data = new SearchIndexableRaw(context);
                    data.title = context.getString(R.string.bluetooth_settings_title);
                    data.screenTitle = context.getString(R.string.settings_label);
                    data.screenTitle = context.getString(R.string.bluetooth_settings_title);
                    data.keywords = context.getString(R.string.keywords_bluetooth_settings);
                    data.intentTargetPackage = context.getPackageName();
                    data.intentTargetClass = BluetoothDashboardFragment.class.getName();
                    data.intentAction = new SubSettingLauncher(context)
                            .setDestination(ScanningSettings.class.getName())
                            .setSourceMetricsCategory(MetricsProto.MetricsEvent.BLUETOOTH_FRAGMENT)
                            .toIntent()
                            .getAction();
                    data.key = KEY_BLUETOOTH_SCREEN;
                    result.add(data);

+9 −0
Original line number Diff line number Diff line
@@ -67,4 +67,13 @@ public class AdvancedConnectedDeviceDashboardFragmentTest {
    public void testGetCategoryKey_returnCategoryDevice() {
        assertThat(mFragment.getCategoryKey()).isEqualTo(CategoryKey.CATEGORY_DEVICE);
    }

    @Test
    public void testSearchIndexProvider_correctNonIndexables() {
        final List<String> niks =
                AdvancedConnectedDeviceDashboardFragment.SEARCH_INDEX_DATA_PROVIDER
                        .getNonIndexableKeys(RuntimeEnvironment.application);

        assertThat(niks).contains(AdvancedConnectedDeviceDashboardFragment.KEY_BLUETOOTH);
    }
}
 No newline at end of file
+60 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2018 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.connecteddevice;

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

import android.content.Context;
import android.text.TextUtils;

import com.android.settings.R;
import com.android.settings.search.SearchIndexableRaw;
import com.android.settings.testutils.SettingsRobolectricTestRunner;

import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RuntimeEnvironment;

import java.util.List;
import java.util.stream.Collectors;

@RunWith(SettingsRobolectricTestRunner.class)
public class BluetoothDashboardFragmentTest {

    private Context mContext;

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

    @Test
    public void rawData_includesFragmentResult() {
        final List<SearchIndexableRaw> rawList =
                BluetoothDashboardFragment.SEARCH_INDEX_DATA_PROVIDER.getRawDataToIndex(mContext,
                        true /* enabled */);

        final SearchIndexableRaw fragmentResult = rawList.stream().filter(
                raw -> TextUtils.equals(raw.title,
                        mContext.getString(R.string.bluetooth_settings))).findFirst().get();


        assertThat(fragmentResult).isNotNull();
    }

}