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

Commit 04510b8a authored by Weilin Xu's avatar Weilin Xu
Browse files

Remove DAB selector secondary ids check in service

Secondary ids for DAB selector, ensemble and frequency are not
mandatory, so the check for this is removed for better flexibilty
in tuning operation.

Bug: 273804622
Test: atest com.android.server.broadcastradio
Test: atest android.hardware.radio
Change-Id: Ic3293c70bd80f6bcefb6cea7c60768a83c5617a4
parent 6bbd3e99
Loading
Loading
Loading
Loading
+0 −26
Original line number Diff line number Diff line
@@ -258,20 +258,6 @@ public final class ConversionUtilsTest extends ExtendedRadioMockitoTestCase {
                .containsExactly(TEST_HAL_DAB_FREQUENCY_ID, TEST_HAL_DAB_ENSEMBLE_ID);
    }

    @Test
    public void programSelectorToHalProgramSelector_withInvalidDabSelector_returnsNull() {
        ProgramSelector invalidDbSelector = new ProgramSelector(ProgramSelector.PROGRAM_TYPE_DAB,
                TEST_DAB_SID_EXT_ID,
                new ProgramSelector.Identifier[0],
                new long[0]);

        android.hardware.broadcastradio.ProgramSelector invalidHalDabSelector =
                ConversionUtils.programSelectorToHalProgramSelector(invalidDbSelector);

        expect.withMessage("Invalid HAL DAB selector without required secondary ids")
                .that(invalidHalDabSelector).isNull();
    }

    @Test
    public void programSelectorFromHalProgramSelector_withValidSelector() {
        android.hardware.broadcastradio.ProgramSelector halDabSelector =
@@ -288,18 +274,6 @@ public final class ConversionUtilsTest extends ExtendedRadioMockitoTestCase {
                .containsExactly(TEST_DAB_FREQUENCY_ID, TEST_DAB_ENSEMBLE_ID);
    }

    @Test
    public void programSelectorFromHalProgramSelector_withInvalidSelector_returnsNull() {
        android.hardware.broadcastradio.ProgramSelector invalidHalDabSelector =
                AidlTestUtils.makeHalSelector(TEST_HAL_DAB_SID_EXT_ID, new ProgramIdentifier[]{});

        ProgramSelector invalidDabSelector =
                ConversionUtils.programSelectorFromHalProgramSelector(invalidHalDabSelector);

        expect.withMessage("Invalid DAB selector without required secondary ids")
                .that(invalidDabSelector).isNull();
    }

    @Test
    public void programInfoFromHalProgramInfo_withValidProgramInfo() {
        android.hardware.broadcastradio.ProgramSelector halDabSelector =
+7 −25
Original line number Diff line number Diff line
@@ -347,31 +347,13 @@ final class ConversionUtils {

    private static boolean isValidHalProgramSelector(
            android.hardware.broadcastradio.ProgramSelector sel) {
        if (sel.primaryId.type != IdentifierType.AMFM_FREQUENCY_KHZ
                && sel.primaryId.type != IdentifierType.RDS_PI
                && sel.primaryId.type != IdentifierType.HD_STATION_ID_EXT
                && sel.primaryId.type != IdentifierType.DAB_SID_EXT
                && sel.primaryId.type != IdentifierType.DRMO_SERVICE_ID
                && sel.primaryId.type != IdentifierType.SXM_SERVICE_ID
                && !isVendorIdentifierType(sel.primaryId.type)) {
            return false;
        }
        if (sel.primaryId.type == IdentifierType.DAB_SID_EXT) {
            boolean hasEnsemble = false;
            boolean hasFrequency = false;
            for (int i = 0; i < sel.secondaryIds.length; i++) {
                if (sel.secondaryIds[i].type == IdentifierType.DAB_ENSEMBLE) {
                    hasEnsemble = true;
                } else if (sel.secondaryIds[i].type == IdentifierType.DAB_FREQUENCY_KHZ) {
                    hasFrequency = true;
                }
                if (hasEnsemble && hasFrequency) {
                    return true;
                }
            }
            return false;
        }
        return true;
        return sel.primaryId.type == IdentifierType.AMFM_FREQUENCY_KHZ
                || sel.primaryId.type == IdentifierType.RDS_PI
                || sel.primaryId.type == IdentifierType.HD_STATION_ID_EXT
                || sel.primaryId.type == IdentifierType.DAB_SID_EXT
                || sel.primaryId.type == IdentifierType.DRMO_SERVICE_ID
                || sel.primaryId.type == IdentifierType.SXM_SERVICE_ID
                || isVendorIdentifierType(sel.primaryId.type);
    }

    @Nullable