package fitnesse; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import org.junit.Test; public class FitNesseVersionTest { @Test public void doesLoadVersionResourceFile() { FitNesseVersion version = new FitNesseVersion(); assertTrue(version.toString().startsWith("v")); assertFalse(version.toString().endsWith("\n")); } @Test public void earlierVersionDateShouldNotBeAtLeastVersion() throws Exception { FitNesseVersion version = new FitNesseVersion("v20100101"); assertFalse(version.isAtLeast("v20100303")); } @Test public void exactVersionDateShouldBeAtLeastVersion() throws Exception { FitNesseVersion version = new FitNesseVersion("v20100303"); assertTrue(version.isAtLeast("v20100303")); } @Test public void laterVersionDateShouldBeAtLeastVersion() throws Exception { FitNesseVersion version = new FitNesseVersion("v20100613"); assertTrue(version.isAtLeast("v20100303")); } @Test public void veryOldImaginaryVersionDoesntCauseRuntimeException() throws Exception { FitNesseVersion version = new FitNesseVersion("v20100613"); assertTrue(version.isAtLeast("v100303")); } @Test public void dateVersionsHandlesVersionsWithExtraSuffixes() throws Exception { assertEquals((Long)20100101L, FitNesseVersion.dateVersion("v20100101-abc-1")); } @Test public void dateVersionsHandlesVersionsWithNoExtraSuffixes() throws Exception { assertEquals((Long)20100101L, FitNesseVersion.dateVersion("v20100101")); } @Test public void versionsWithSuffixesCompareToVersionsWithoutSuffix() throws Exception { FitNesseVersion version = new FitNesseVersion("v20100101-abc-1"); assertFalse(version.isAtLeast("v20100303")); } @Test public void suffixesAreIgnoredWhenComparingVersions() throws Exception { FitNesseVersion version = new FitNesseVersion("v20100101-abc-1"); assertFalse(version.isAtLeast("v20100303-abc-2")); } }