package org.zaproxy.zap.control; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.runners.MockitoJUnitRunner; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @RunWith(MockitoJUnitRunner.class) public class ZapReleaseUnitTest { private static final String DEV_BUILD = "Dev Build"; @Test public void testDevBuildLaterThan1_4_1() { ZapRelease rel = new ZapRelease(); rel.setVersion(DEV_BUILD); assertTrue(rel.isNewerThan("1.4.1")); } @Test public void test1_4_2LaterThan1_4_1() { ZapRelease rel = new ZapRelease(); rel.setVersion("1.4.2"); assertTrue(rel.isNewerThan("1.4.1")); } @Test public void test1_5_1LaterThan1_4_2() { ZapRelease rel = new ZapRelease(); rel.setVersion("1.5.1"); assertTrue(rel.isNewerThan("1.4.2")); } @Test public void test1_5_1LaterThan1_4_2_1() { ZapRelease rel = new ZapRelease(); rel.setVersion("1.5.1"); assertTrue(rel.isNewerThan("1.4.2.1")); } @Test public void testLots() { // Imported from old CheckForUpdates code assertFalse(new ZapRelease("1.3.4").isNewerThan("1.4")); assertFalse(new ZapRelease("1.3.4").isNewerThan("1.4")); assertFalse(new ZapRelease("1.3.4").isNewerThan("2.0")); assertFalse(new ZapRelease("1.4").isNewerThan("1.4.1")); assertFalse(new ZapRelease("1.4.1").isNewerThan("1.4.2")); assertFalse(new ZapRelease("1.4.2").isNewerThan("1.4.11")); // Dont support this right now //assertFalse(new ZapRelease("1.4.alpha.1").isNewerThan("1.4")); //assertFalse(new ZapRelease("1.4.alpha.1").isNewerThan("1.4.1")); assertFalse(new ZapRelease("1.4.beta.1").isNewerThan("1.5")); assertFalse(new ZapRelease("D-2012-08-01").isNewerThan("D-2012-08-02")); assertFalse(new ZapRelease("D-2012-01-01").isNewerThan("D-2013-10-10")); assertFalse(new ZapRelease("1.4").isNewerThan("1.4")); assertTrue(new ZapRelease("1.4").isNewerThan("1.3.4")); assertTrue(new ZapRelease("1.4.2").isNewerThan("1.4.1")); assertTrue(new ZapRelease("1.4.20").isNewerThan("1.4.11")); assertTrue(new ZapRelease("1.4.alpha.1").isNewerThan("1.3.4")); // Dont support this right now //assertTrue(new ZapRelease("1.4").isNewerThan("1.4.alpha.1")); assertTrue(new ZapRelease("Dev Build").isNewerThan("1.5")); assertTrue(new ZapRelease("D-2012-08-02").isNewerThan("D-2012-08-01")); assertTrue(new ZapRelease("D-2013-10-10").isNewerThan("D-2012-01-01")); assertTrue(new ZapRelease("D-2013-01-01").isNewerThan("D-2012-12-31")); assertTrue(new ZapRelease("D-2013-01-07").isNewerThan("D-2012-12-31")); } }