DS-Lab / src / test / java / dslab / mailbox / MailboxManagerTest.java
MailboxManagerTest.java
Raw
package dslab.mailbox;

import dslab.authentication.AuthenticationService;
import org.junit.Test;

import static dslab.TestObjects.*;
import static dslab.protocol.MessageBuilder.aMessage;
import static java.util.Collections.singleton;
import static org.hamcrest.CoreMatchers.hasItem;
import static org.junit.Assert.assertThat;

public class MailboxManagerTest {

    @Test
    public void sendsMailToCorrectUser() {

        var message = aMessage().recipients(arthurAtEarthPlanet).build();
        var mailboxManager = new MailboxManager(
                earthPlanet(),
                new AuthenticationService(singleton(arthur)));

        mailboxManager.deliver(message);

        assertThat(mailboxManager.getMailbox(arthur).getMessages().values(), hasItem(message));
    }

}