package com.lassekoskela.maven.buildevents; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertThat; import org.junit.Before; import org.junit.Test; public class BuildEventLog_SimpleProjectTest extends AbstractBuildEventLogTest { @Before public void setUp() throws Exception { simulator.goal("phase-A", "goal-A1", 100); simulator.goal("phase-B", "goal-B1", 2000); simulator.goal("phase-B", "goal-B2", 300); simulator.goal("phase-C", "goal-C1", 20); simulator.goal("phase-C", "goal-C2", 300); simulator.goal("phase-C", "goal-C3", 10); } @Test public void asksForTotalDurationFromTheReportObject() { assertEquals(2730, log.totalDuration()); assertEquals(2730, log.totalDurationOfProject(simulator.project)); } @Test public void asksForTotalDurationForPhaseFromTheReportObject() { assertEquals(100, log.totalDurationOfPhase("phase-A")); assertEquals(2300, log.totalDurationOfPhase("phase-B")); assertEquals(330, log.totalDurationOfPhase("phase-C")); } @Test public void producesAReportOnCue() throws Exception { log.report(); assertThat(getReportedSteps(), hasBuildStep("phase-A", "goal-A1")); assertThat(getReportedSteps(), hasBuildStep("phase-B", "goal-B1")); assertThat(getReportedSteps(), hasBuildStep("phase-B", "goal-B2")); assertThat(getReportedSteps(), hasBuildStep("phase-C", "goal-C1")); assertThat(getReportedSteps(), hasBuildStep("phase-C", "goal-C2")); assertThat(getReportedSteps(), hasBuildStep("phase-C", "goal-C3")); } }