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

Commit 8ceb579e authored by Julia Reynolds's avatar Julia Reynolds
Browse files

Changing importance should record user locked field.

Test: runtest systemui
Change-Id: Ia200acb2e2a2b2163fd4a728a2bfc5430070c580
parent f4077aa3
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -274,6 +274,7 @@ public class NotificationInfo extends LinearLayout implements NotificationGuts.G
        MetricsLogger.action(mContext, MetricsEvent.ACTION_SAVE_IMPORTANCE,
                selectedImportance - mStartingUserImportance);
        mSingleNotificationChannel.setImportance(selectedImportance);
        mSingleNotificationChannel.lockFields(NotificationChannel.USER_LOCKED_IMPORTANCE);
        try {
            mINotificationManager.updateNotificationChannelForPackage(
                    mPkg, mAppUid, mSingleNotificationChannel);
+8 −2
Original line number Diff line number Diff line
@@ -61,6 +61,7 @@ import com.android.systemui.SysuiTestCase;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentCaptor;

import java.util.ArrayList;
import java.util.Arrays;
@@ -585,11 +586,16 @@ public class NotificationInfoTest extends SysuiTestCase {
                mNotificationChannel.getImportance(), mSbn, null, null, null,
                null, Collections.singleton(TEST_PACKAGE_NAME));

        Switch enabledSwitch = (Switch) mNotificationInfo.findViewById(R.id.channel_enabled_switch);
        Switch enabledSwitch = mNotificationInfo.findViewById(R.id.channel_enabled_switch);
        enabledSwitch.setChecked(false);
        mNotificationInfo.handleCloseControls(true);

        ArgumentCaptor<NotificationChannel> updated =
                ArgumentCaptor.forClass(NotificationChannel.class);
        verify(mMockINotificationManager, times(1)).updateNotificationChannelForPackage(
                eq(TEST_PACKAGE_NAME), anyInt(), eq(mNotificationChannel));
                anyString(), anyInt(), updated.capture());
        assertTrue((updated.getValue().getUserLockedFields()
                & NotificationChannel.USER_LOCKED_IMPORTANCE) != 0);
    }

    @Test