/* * This file is part of JGAP. * * JGAP offers a dual license model containing the LGPL as well as the MPL. * * For licensing information please see the file license.txt included with JGAP * or have a look at the top of class org.jgap.Chromosome which representatively * includes the JGAP license policy applicable for any file delivered with JGAP. */ package examples.supergene; import junit.framework.*; import org.jgap.*; import org.jgap.supergenes.*; /** * Test Supergene sample application, verifying the "make change" * supergene and non-supergene versions. Both must return a zero error. * Performance is not verified. * * @author Meskauskas Audrius * @since 2.0 */ public class SupergeneSampleApplicationTest extends JGAPTestCase { /** String containing the CVS revision. Read out via reflection!*/ private final static String CVS_REVISION = "$Revision: 1.2 $"; public void testSupergeneTotal() { int E_s = Integer.MAX_VALUE; Test: for (int i = 0; i < 2; i++) { AbstractSupergeneTest.EXISTING_SOLUTIONS_ONLY = true; AbstractSupergeneTest.REPORT_ENABLED = false; Force.REPORT_ENABLED = false; AbstractSupergeneTest.MAX_ALLOWED_EVOLUTIONS = 512; AbstractSupergeneTest.POPULATION_SIZE = 256; AbstractSupergene.reset(); E_s = new SupergeneSample().test(); if (E_s == 0) { break Test; } assertTrue("Correctness of solution: supergene " + E_s, E_s < 3); } assertTrue("Correctness of solution: supergene " + E_s, E_s == 0); } public static Test suite() { TestSuite suite = new TestSuite(SupergeneSampleApplicationTest.class); return suite; } }