package com.cwa.mail; import java.util.ArrayList; import static org.junit.Assert.assertEquals; import org.junit.Test; public class MailBoxTest { @Test public void mailId() { MailBox<Mail> box = new MailBox<Mail>(); box.setMails(new ArrayList<Mail>()); assertEquals(1, box.getNewMailId()); Mail newMail1 = new Mail(); box.addNewMail(newMail1); assertEquals(2, box.getNewMailId()); Mail newMail2 = new Mail(); box.addNewMail(newMail2); assertEquals(3, box.getNewMailId()); } @Test public void deleteMail() { MailBox<Mail> box = new MailBox<Mail>(); box.setMails(new ArrayList<Mail>()); // 10封邮件 for (int i = 0; i < 10; i++) { box.addNewMail(new Mail()); } assertEquals(10, box.getMails().size()); box.deleteMailsOlderThan(0); assertEquals(10, box.getMails().size()); // 删掉 1 2 box.deleteMailsOlderThan(2); assertEquals(8, box.getMails().size()); // 删掉 3 4 5 box.deleteMailsOlderThan(5); assertEquals(5, box.getMails().size()); // 全部删掉 box.deleteMailsOlderThan(100); assertEquals(0, box.getMails().size()); } @Test public void maxMailCount() { int maxMailCount = 20; MailBox<Mail> box = new MailBox<Mail>(); box.setCapacity(maxMailCount); box.setMails(new ArrayList<Mail>()); for (int i = 0; i < 100; i++) { Mail newMail1 = new Mail(); box.addNewMail(newMail1); } assertEquals(maxMailCount, box.getMails().size()); int startId = 100 - maxMailCount; for (int i = 0; i < box.getMails().size(); i++) { assertEquals(startId + i + 1, box.getMails().get(i).getId()); } } }