Merge "add conversation flags to channel atom" into rvc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
1d867453ca
@@ -6032,6 +6032,12 @@ message PackageNotificationChannelPreferences {
|
||||
optional int32 user_locked_fields = 6;
|
||||
// Indicates if the channel was deleted by the app.
|
||||
optional bool is_deleted = 7;
|
||||
// Indicates if the channel was marked as a conversation by the app.
|
||||
optional bool is_conversation = 8;
|
||||
// Indicates if the channel is a conversation that was demoted by the user.
|
||||
optional bool is_demoted_conversation = 9;
|
||||
// Indicates if the channel is a conversation that was marked as important by the user.
|
||||
optional bool is_important_conversation = 10;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1936,6 +1936,9 @@ public class PreferencesHelper implements RankingConfig {
|
||||
event.writeInt(channel.getImportance());
|
||||
event.writeInt(channel.getUserLockedFields());
|
||||
event.writeBoolean(channel.isDeleted());
|
||||
event.writeBoolean(channel.getConversationId() != null);
|
||||
event.writeBoolean(channel.isDemoted());
|
||||
event.writeBoolean(channel.isImportantConversation());
|
||||
events.add(event.build());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -81,6 +81,7 @@ import android.testing.TestableContentResolver;
|
||||
import android.util.ArrayMap;
|
||||
import android.util.ArraySet;
|
||||
import android.util.Pair;
|
||||
import android.util.StatsEvent;
|
||||
import android.util.Xml;
|
||||
|
||||
import androidx.test.InstrumentationRegistry;
|
||||
@@ -89,6 +90,7 @@ import androidx.test.runner.AndroidJUnit4;
|
||||
import com.android.internal.util.FastXmlSerializer;
|
||||
import com.android.server.UiServiceTestCase;
|
||||
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONObject;
|
||||
import org.junit.Before;
|
||||
@@ -2996,6 +2998,31 @@ public class PreferencesHelperTest extends UiServiceTestCase {
|
||||
PKG_O, UID_O, parent.getId(), conversationId, false, false), conversationId);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testPullConversationNotificationChannel() {
|
||||
String conversationId = "friend";
|
||||
|
||||
NotificationChannel parent =
|
||||
new NotificationChannel("parent", "messages", IMPORTANCE_DEFAULT);
|
||||
mHelper.createNotificationChannel(PKG_O, UID_O, parent, true, false);
|
||||
|
||||
String channelId = String.format(
|
||||
CONVERSATION_CHANNEL_ID_FORMAT, parent.getId(), conversationId);
|
||||
NotificationChannel friend = new NotificationChannel(channelId,
|
||||
"messages", IMPORTANCE_DEFAULT);
|
||||
friend.setConversationId(parent.getId(), conversationId);
|
||||
mHelper.createNotificationChannel(PKG_O, UID_O, friend, true, false);
|
||||
ArrayList<StatsEvent> events = new ArrayList<>();
|
||||
mHelper.pullPackageChannelPreferencesStats(events);
|
||||
boolean found = false;
|
||||
for (StatsEvent event : events) {
|
||||
// TODO(b/153195691): inspect the content once it is possible to do so
|
||||
found = true;
|
||||
}
|
||||
assertTrue("conversation was not in the pull", found);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetNotificationChannel_conversationProvidedByNotCustomizedYet() {
|
||||
String conversationId = "friend";
|
||||
|
||||
Reference in New Issue
Block a user