package com.hubspot.blazar.data.dao; import static org.assertj.core.api.Assertions.assertThat; import org.jukito.JukitoRunner; import org.jukito.UseModules; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import com.google.common.base.Optional; import com.google.inject.Inject; import com.hubspot.blazar.base.RepositoryBuild; import com.hubspot.blazar.data.BlazarDataTestModule; import com.hubspot.blazar.test.base.service.DatabaseBackedTest; import io.dropwizard.db.ManagedDataSource; @RunWith(JukitoRunner.class) @UseModules({BlazarDataTestModule.class}) public class RepositoryBuildDaoTest extends DatabaseBackedTest { @Inject RepositoryBuildDao dao; @Before @Inject public void before(ManagedDataSource dataSource) throws Exception { runSql(dataSource, "buildHistory.sql"); } @Test public void itGetsPreviousBuild() { Optional<RepositoryBuild> buildThree = dao.getByBranchAndNumber(1, 3); assertThat(buildThree.isPresent()).isTrue(); assertThat(buildThree.get().getBuildNumber()).isEqualTo(3); Optional<RepositoryBuild> buildTwo = dao.getPreviousBuild(buildThree.get()); assertThat(buildTwo.isPresent()).isTrue(); assertThat(buildTwo.get().getBuildNumber()).isEqualTo(2); } }