@Test public void testCompareTo() { CharacterGene g1 = CharacterGene.of('1'); CharacterGene g2 = CharacterGene.of('2'); CharacterGene g3 = CharacterGene.of('3'); assertTrue(g1.compareTo(g2) < 0); assertTrue(g2.compareTo(g3) < 0); assertTrue(g3.compareTo(g2) > 0); assertTrue(g2.compareTo(g2) == 0); }
@Test(invocationCount = 20, successPercentage = 95) public void newInstanceDistribution() { using( new Random(12345), r -> { final CharSeq characters = new CharSeq("0123456789"); final Factory<CharacterGene> factory = CharacterGene.of(characters); final Histogram<Long> histogram = Histogram.ofLong(0L, 10L, 10); final int samples = 100000; for (int i = 0; i < samples; ++i) { final CharacterGene g1 = factory.newInstance(); final CharacterGene g2 = factory.newInstance(); Assert.assertNotSame(g1, g2); histogram.accept(Long.valueOf(g1.getAllele().toString())); histogram.accept(Long.valueOf(g2.getAllele().toString())); } assertUniformDistribution(histogram); }); }
@Test public void testGetCharacter() { CharacterGene gene = CharacterGene.of('6'); assertEquals(new Character('6'), gene.getAllele()); }
@Test public void testCharacterGene() { CharacterGene gene = CharacterGene.of(); assertTrue(gene.isValidCharacter(gene.getAllele())); }
@Test public void testIsValidCharacter() { for (Character c : CharacterGene.DEFAULT_CHARACTERS) { assertTrue(CharacterGene.of(c).isValidCharacter(c)); } }