001 package org.hackystat.dailyprojectdata.resource.devtime; 002 003 import static org.junit.Assert.assertEquals; 004 005 import java.math.BigInteger; 006 007 import javax.xml.datatype.XMLGregorianCalendar; 008 import org.hackystat.utilities.tstamp.Tstamp; 009 import org.junit.Test; 010 011 /** 012 * Tests the DevTimeCounter. 013 * @author Philip Johnson 014 */ 015 public class TestMemberDevTimeCounter { 016 017 /** 018 * Test the DevTimeCounter abstraction. 019 * @throws Exception If problems occur. 020 */ 021 @Test public void testMemberDevTimeCounter() throws Exception { 022 XMLGregorianCalendar tstamp1 = Tstamp.makeTimestamp("2007-08-01T00:00:00"); 023 String member1 = "member1"; 024 String member2 = "member2"; 025 026 MemberDevTimeCounter counter = new MemberDevTimeCounter(); 027 assertEquals("Test empty", BigInteger.valueOf(0), counter.getTotalDevTime()); 028 counter.addMemberDevEvent(member1, tstamp1); 029 assertEquals("Test first", BigInteger.valueOf(5), counter.getTotalDevTime()); 030 counter.addMemberDevEvent(member2, tstamp1); 031 assertEquals("Test second", BigInteger.valueOf(10), counter.getTotalDevTime()); 032 033 assertEquals("Test third", BigInteger.valueOf(5), counter.getMemberDevTime(member1)); 034 assertEquals("Test fourth", BigInteger.valueOf(5), counter.getMemberDevTime(member2)); 035 assertEquals("Test fifth", 2, counter.getMembers().size()); 036 } 037 }