Merge branch '214-user-avatars' into 'master'

Merge user avatars feature branch

See merge request briar/briar!1334
This commit is contained in:
akwizgran
2021-01-25 15:15:54 +00:00
225 changed files with 4256 additions and 1036 deletions

View File

@@ -1,11 +1,15 @@
package org.briarproject.briar.android.attachment;
import org.briarproject.bramble.api.sync.GroupId;
import org.briarproject.bramble.api.sync.MessageId;
import org.briarproject.bramble.test.BrambleMockTestCase;
import org.briarproject.bramble.test.ImmediateExecutor;
import org.briarproject.briar.api.messaging.Attachment;
import org.briarproject.briar.api.messaging.AttachmentHeader;
import org.briarproject.briar.api.messaging.MessagingManager;
import org.briarproject.briar.android.attachment.media.ImageHelper;
import org.briarproject.briar.android.attachment.media.ImageSizeCalculator;
import org.briarproject.briar.android.attachment.media.Size;
import org.briarproject.briar.api.attachment.Attachment;
import org.briarproject.briar.api.attachment.AttachmentHeader;
import org.briarproject.briar.api.attachment.AttachmentReader;
import org.jmock.Expectations;
import org.jmock.lib.legacy.ClassImposteriser;
import org.junit.Test;
@@ -25,6 +29,7 @@ public class AttachmentRetrieverTest extends BrambleMockTestCase {
private final AttachmentDimensions dimensions = new AttachmentDimensions(
100, 50, 200, 75, 300
);
private final GroupId groupId = new GroupId(getRandomId());
private final MessageId msgId = new MessageId(getRandomId());
private final ImageHelper imageHelper = context.mock(ImageHelper.class);
private final ImageSizeCalculator imageSizeCalculator;
@@ -32,11 +37,11 @@ public class AttachmentRetrieverTest extends BrambleMockTestCase {
public AttachmentRetrieverTest() {
context.setImposteriser(ClassImposteriser.INSTANCE);
MessagingManager messagingManager =
context.mock(MessagingManager.class);
AttachmentReader attachmentReader =
context.mock(AttachmentReader.class);
imageSizeCalculator = context.mock(ImageSizeCalculator.class);
Executor dbExecutor = new ImmediateExecutor();
retriever = new AttachmentRetrieverImpl(dbExecutor, messagingManager,
retriever = new AttachmentRetrieverImpl(dbExecutor, attachmentReader,
dimensions, imageHelper, imageSizeCalculator);
}
@@ -133,7 +138,8 @@ public class AttachmentRetrieverTest extends BrambleMockTestCase {
}
private Attachment getAttachment(String contentType) {
AttachmentHeader header = new AttachmentHeader(msgId, contentType);
AttachmentHeader header =
new AttachmentHeader(groupId, msgId, contentType);
InputStream in = new ByteArrayInputStream(getRandomBytes(42));
return new Attachment(header, in);
}

View File

@@ -6,7 +6,7 @@ import junit.framework.Assert;
import org.briarproject.bramble.api.db.DbException;
import org.briarproject.bramble.api.identity.Author;
import org.briarproject.bramble.api.identity.AuthorInfo;
import org.briarproject.briar.api.identity.AuthorInfo;
import org.briarproject.bramble.api.sync.MessageId;
import org.briarproject.briar.android.controller.handler.UiResultExceptionHandler;
import org.briarproject.briar.android.threaded.ThreadItemAdapter;
@@ -25,7 +25,7 @@ import org.robolectric.annotation.Config;
import java.util.Arrays;
import static junit.framework.Assert.assertEquals;
import static org.briarproject.bramble.api.identity.AuthorInfo.Status.UNKNOWN;
import static org.briarproject.briar.api.identity.AuthorInfo.Status.UNKNOWN;
import static org.briarproject.bramble.test.TestUtils.getAuthor;
import static org.briarproject.bramble.test.TestUtils.getRandomId;
import static org.briarproject.bramble.util.StringUtils.getRandomString;

View File

@@ -3,14 +3,12 @@ package org.briarproject.briar.android.privategroup.list;
import android.app.Application;
import org.briarproject.bramble.api.contact.Contact;
import org.briarproject.bramble.api.contact.ContactManager;
import org.briarproject.bramble.api.db.DbException;
import org.briarproject.bramble.api.db.Transaction;
import org.briarproject.bramble.api.db.TransactionManager;
import org.briarproject.bramble.api.event.Event;
import org.briarproject.bramble.api.event.EventBus;
import org.briarproject.bramble.api.event.EventListener;
import org.briarproject.bramble.api.identity.AuthorInfo;
import org.briarproject.bramble.api.lifecycle.LifecycleManager;
import org.briarproject.bramble.api.sync.Group;
import org.briarproject.bramble.api.system.AndroidExecutor;
@@ -20,6 +18,8 @@ import org.briarproject.bramble.test.ImmediateExecutor;
import org.briarproject.briar.android.AndroidExecutorTestImpl;
import org.briarproject.briar.android.viewmodel.LiveResult;
import org.briarproject.briar.api.android.AndroidNotificationManager;
import org.briarproject.briar.api.identity.AuthorInfo;
import org.briarproject.briar.api.identity.AuthorManager;
import org.briarproject.briar.api.privategroup.PrivateGroup;
import org.briarproject.briar.api.privategroup.PrivateGroupManager;
import org.briarproject.briar.api.privategroup.event.GroupDissolvedEvent;
@@ -67,8 +67,8 @@ public class GroupListViewModelTest extends BrambleMockTestCase {
context.mock(PrivateGroupManager.class);
private final GroupInvitationManager groupInvitationManager =
context.mock(GroupInvitationManager.class);
private final ContactManager contactManager =
context.mock(ContactManager.class);
private final AuthorManager authorManager =
context.mock(AuthorManager.class);
private final AndroidNotificationManager notificationManager =
context.mock(AndroidNotificationManager.class);
private final EventBus eventBus = context.mock(EventBus.class);
@@ -105,7 +105,7 @@ public class GroupListViewModelTest extends BrambleMockTestCase {
new AndroidExecutorTestImpl(dbExecutor);
viewModel = new GroupListViewModel(app, dbExecutor, lifecycleManager,
db, androidExecutor, groupManager, groupInvitationManager,
contactManager, notificationManager, eventBus);
authorManager, notificationManager, eventBus);
}
@Test
@@ -199,7 +199,7 @@ public class GroupListViewModelTest extends BrambleMockTestCase {
AuthorInfo authorInfo, GroupCount groupCount, boolean dissolved)
throws DbException {
context.checking(new DbExpectations() {{
oneOf(contactManager)
oneOf(authorManager)
.getAuthorInfo(txn, privateGroup.getCreator().getId());
will(returnValue(authorInfo));
oneOf(groupManager).getGroupCount(txn, privateGroup.getId());