package com.offbytwo.jenkins.model; import static org.assertj.core.api.Assertions.assertThat; import java.util.Collections; import org.junit.Before; import org.junit.Test; public class JobWithDetailsTest { private JobWithDetails job; @Before public void setUp() { job = givenNewJobWithoutAnyBuilds(); } private JobWithDetails givenNewJobWithoutAnyBuilds() { return new JobWithDetails(); } private void failIfNotBuildHasNeverRanReturned(Build build) { assertThat(build).isEqualTo(Build.BUILD_HAS_NEVER_RUN); } @Test public void getLastStableBuildShouldReturnBuildHasNeverRan() { failIfNotBuildHasNeverRanReturned(job.getLastStableBuild()); } @Test public void getLastBuildShouldReturnBuildHasNeverRan() { failIfNotBuildHasNeverRanReturned(job.getLastBuild()); } @Test public void getLastCompletedBuildShouldReturnBuildHasNeverRan() { failIfNotBuildHasNeverRanReturned(job.getLastCompletedBuild()); } @Test public void getLastFailedBuildShouldReturnBuildHasNeverRan() { failIfNotBuildHasNeverRanReturned(job.getLastFailedBuild()); } @Test public void getLastSuccessfulBuildShouldReturnBuildHasNeverRan() { failIfNotBuildHasNeverRanReturned(job.getLastSuccessfulBuild()); } @Test public void getLastUnstableBuildShouldReturnBuildHasNeverRan() { failIfNotBuildHasNeverRanReturned(job.getLastUnstableBuild()); } @Test public void getLastUnsuccessfulBuildShouldReturnBuildHasNeverRan() { failIfNotBuildHasNeverRanReturned(job.getLastUnsuccessfulBuild()); } @Test public void getDownstreamProjectsShouldReturnEmptyList() { assertThat(job.getDownstreamProjects()).isEqualTo(Collections.emptyList()); } @Test public void getUpstreamProjectsShouldReturnEmptyList() { assertThat(job.getUpstreamProjects()).isEqualTo(Collections.emptyList()); } }