1 package net.pterodactylus.sone.data;
3 import static org.hamcrest.MatcherAssert.assertThat;
4 import static org.mockito.Mockito.mock;
5 import static org.mockito.Mockito.when;
7 import java.util.ArrayList;
8 import java.util.Arrays;
9 import java.util.Collections;
10 import java.util.List;
12 import org.hamcrest.Matchers;
13 import org.junit.Test;
16 * Unit test for the static elements in {@link Reply}.
18 * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
20 public class ReplyTest {
23 public void comparatorSortsRepliesCorrectly() {
24 Reply<?> reply1 = mock(Reply.class);
25 when(reply1.getTime()).thenReturn(3000L);
26 Reply<?> reply2 = mock(Reply.class);
27 when(reply2.getTime()).thenReturn(2000L);
28 Reply<?> reply3 = mock(Reply.class);
29 when(reply3.getTime()).thenReturn(1000L);
30 List<Reply<?>> replies = new ArrayList<Reply<?>>(Arrays.<Reply<?>>asList(reply1, reply2, reply3));
31 Collections.sort(replies, Reply.TIME_COMPARATOR);
32 assertThat(replies, Matchers.<Reply<?>>contains(reply3, reply2, reply1));