From d2728dd29b66a9a28bde5425f125d38e6634e703 Mon Sep 17 00:00:00 2001 From: Daniel Lublin Date: Mon, 16 May 2022 10:05:15 +0200 Subject: [PATCH] Assert that we have a local update --- .../api/mailbox/MailboxPropertyManager.java | 1 - .../mailbox/MailboxPropertyManagerImpl.java | 9 +++++-- .../MailboxPropertyManagerImplTest.java | 24 ------------------- 3 files changed, 7 insertions(+), 27 deletions(-) diff --git a/bramble-api/src/main/java/org/briarproject/bramble/api/mailbox/MailboxPropertyManager.java b/bramble-api/src/main/java/org/briarproject/bramble/api/mailbox/MailboxPropertyManager.java index 6180ba152..e7e1d8d42 100644 --- a/bramble-api/src/main/java/org/briarproject/bramble/api/mailbox/MailboxPropertyManager.java +++ b/bramble-api/src/main/java/org/briarproject/bramble/api/mailbox/MailboxPropertyManager.java @@ -57,7 +57,6 @@ public interface MailboxPropertyManager { */ String MSG_KEY_LOCAL = "local"; - @Nullable MailboxPropertiesUpdate getLocalProperties(Transaction txn, ContactId c) throws DbException; diff --git a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxPropertyManagerImpl.java b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxPropertyManagerImpl.java index f2ca77084..c6eb94ab4 100644 --- a/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxPropertyManagerImpl.java +++ b/bramble-core/src/main/java/org/briarproject/bramble/mailbox/MailboxPropertyManagerImpl.java @@ -180,10 +180,15 @@ class MailboxPropertyManagerImpl implements MailboxPropertyManager, } @Override - @Nullable public MailboxPropertiesUpdate getLocalProperties(Transaction txn, ContactId c) throws DbException { - return getProperties(txn, db.getContact(txn, c), true); + MailboxPropertiesUpdate local = + getProperties(txn, db.getContact(txn, c), true); + // An update (with or without mailbox) is created when contact is added + if (local == null) { + throw new DbException(); + } + return local; } @Override diff --git a/bramble-core/src/test/java/org/briarproject/bramble/mailbox/MailboxPropertyManagerImplTest.java b/bramble-core/src/test/java/org/briarproject/bramble/mailbox/MailboxPropertyManagerImplTest.java index 679555d53..63cfc2d1a 100644 --- a/bramble-core/src/test/java/org/briarproject/bramble/mailbox/MailboxPropertyManagerImplTest.java +++ b/bramble-core/src/test/java/org/briarproject/bramble/mailbox/MailboxPropertyManagerImplTest.java @@ -673,30 +673,6 @@ public class MailboxPropertyManagerImplTest extends BrambleMockTestCase { assertTrue(mailboxPropertiesUpdateEqual(local, updateMailbox)); } - @Test - public void testGetLocalPropertiesReturnsNullBecauseNoUpdate() - throws Exception { - Transaction txn = new Transaction(null, false); - Contact contact = getContact(); - Group contactGroup = getGroup(CLIENT_ID, MAJOR_VERSION); - Map emptyMessageMetadata = - new LinkedHashMap<>(); - - context.checking(new Expectations() {{ - oneOf(db).getContact(txn, contact.getId()); - will(returnValue(contact)); - oneOf(contactGroupFactory).createContactGroup(CLIENT_ID, - MAJOR_VERSION, contact); - will(returnValue(contactGroup)); - oneOf(clientHelper).getMessageMetadataAsDictionary(txn, - contactGroup.getId()); - will(returnValue(emptyMessageMetadata)); - }}); - - MailboxPropertyManagerImpl t = createInstance(); - assertNull(t.getLocalProperties(txn, contact.getId())); - } - @Test public void testGetLocalPropertiesNoMailbox() throws Exception {