mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-21 00:59:49 +01:00
Show group update messages for member label permission changes.
This commit is contained in:
@@ -824,6 +824,34 @@ class GroupsV2UpdateMessageProducerTest {
|
||||
assertEquals(listOf("Who can edit group membership has been changed to \"Only admins\"."), describeChange(change))
|
||||
}
|
||||
|
||||
// member label access change
|
||||
@Test
|
||||
fun member_changes_member_label_access() {
|
||||
val change = ChangeBuilder.changeBy(bob)
|
||||
.memberLabelAccess(MEMBER)
|
||||
.build()
|
||||
|
||||
assertEquals(listOf("Bob changed who can add member labels to \"All members\"."), describeChange(change))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun you_changed_member_label_access() {
|
||||
val change = ChangeBuilder.changeBy(you)
|
||||
.memberLabelAccess(ADMINISTRATOR)
|
||||
.build()
|
||||
|
||||
assertEquals(listOf("You changed who can add member labels to \"Only admins\"."), describeChange(change))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun unknown_changed_member_label_access() {
|
||||
val change = ChangeBuilder.changeByUnknown()
|
||||
.memberLabelAccess(ADMINISTRATOR)
|
||||
.build()
|
||||
|
||||
assertEquals(listOf("An admin changed who can add member labels to \"Only admins\"."), describeChange(change))
|
||||
}
|
||||
|
||||
// Group link access change
|
||||
@Test
|
||||
fun you_changed_group_link_access_to_any() {
|
||||
|
||||
@@ -3,6 +3,8 @@ package org.thoughtcrime.securesms.groups.v2;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import org.signal.core.models.ServiceId.ACI;
|
||||
import org.signal.core.util.Util;
|
||||
import org.signal.libsignal.zkgroup.InvalidInputException;
|
||||
import org.signal.libsignal.zkgroup.profiles.ProfileKey;
|
||||
import org.signal.storageservice.storage.protos.groups.AccessControl;
|
||||
@@ -16,8 +18,6 @@ import org.signal.storageservice.storage.protos.groups.local.DecryptedPendingMem
|
||||
import org.signal.storageservice.storage.protos.groups.local.DecryptedRequestingMember;
|
||||
import org.signal.storageservice.storage.protos.groups.local.DecryptedString;
|
||||
import org.signal.storageservice.storage.protos.groups.local.DecryptedTimer;
|
||||
import org.signal.core.util.Util;
|
||||
import org.signal.core.models.ServiceId.ACI;
|
||||
|
||||
import kotlin.collections.CollectionsKt;
|
||||
import okio.ByteString;
|
||||
@@ -128,6 +128,11 @@ public final class ChangeBuilder {
|
||||
return this;
|
||||
}
|
||||
|
||||
public ChangeBuilder memberLabelAccess(@NonNull AccessControl.AccessRequired accessRequired) {
|
||||
builder.newMemberLabelAccess(accessRequired);
|
||||
return this;
|
||||
}
|
||||
|
||||
public ChangeBuilder inviteLinkAccess(@NonNull AccessControl.AccessRequired accessRequired) {
|
||||
builder.newInviteLinkAccess(accessRequired);
|
||||
return this;
|
||||
|
||||
Reference in New Issue
Block a user