Gather data
This commit is contained in:
@@ -103,6 +103,12 @@ public class SwedishGeneratorTest {
|
||||
|
||||
@Test
|
||||
void testLemmaAndDict() {
|
||||
var l2a = new Lemma("IN", 1, "BIJ");
|
||||
var l4a = new Lemma("INER", 1, "BIJER");
|
||||
var l6a = new Lemma("INEREN", 1, "BIJERE");
|
||||
var l7a = new Lemma("INERENA", 1, "BIJERE");
|
||||
var l8a = new Lemma("INERENAE", 1, "BIJERE");
|
||||
|
||||
var l1 = new Lemma("APPLE", 5, "A fruit");
|
||||
Assertions.assertArrayEquals("APPLE".getBytes(StandardCharsets.US_ASCII), l1.word());
|
||||
assertEquals(5, l1.word().length);
|
||||
@@ -110,10 +116,10 @@ public class SwedishGeneratorTest {
|
||||
assertEquals((byte) 'A', l1.byteAt(0));
|
||||
|
||||
var l2 = new Lemma("AXE", 2, "A tool");
|
||||
var dict = new Dict(new Lemma[]{ l1, l2 });
|
||||
var dict = new Dict(new Lemma[]{ l1, l2, l2a, l4a, l6a, l7a, l8a });
|
||||
|
||||
assertEquals(1, dict.lenCounts()[3]);
|
||||
assertEquals(1, dict.lenCounts()[5]);
|
||||
assertEquals(1, dict.index()[3].words().size());
|
||||
assertEquals(1, dict.index()[5].words().size());
|
||||
|
||||
var entry3 = dict.index()[3];
|
||||
assertEquals(1, entry3.words().size());
|
||||
@@ -173,10 +179,16 @@ public class SwedishGeneratorTest {
|
||||
|
||||
@Test
|
||||
void testCandidateInfoForPattern() {
|
||||
var l0 = new Lemma("IN", 1, "BIJ");
|
||||
var l3a = new Lemma("INE", 1, "BIJE");
|
||||
var l4a = new Lemma("INER", 1, "BIJER");
|
||||
var l6a = new Lemma("INEREN", 1, "BIJERE");
|
||||
var l7a = new Lemma("INERENA", 1, "BIJERE");
|
||||
var l8a = new Lemma("INERENAE", 1, "BIJERE");
|
||||
var l1 = new Lemma("APPLE", 1, "fruit");
|
||||
var l2 = new Lemma("APPLY", 1, "verb");
|
||||
var l3 = new Lemma("BANAN", 1, "fruit");
|
||||
var dict = new Dict(new Lemma[]{ l1, l2, l3 });
|
||||
var dict = new Dict(new Lemma[]{ l0, l1, l2, l3, l3a, l4a, l6a, l7a, l8a });
|
||||
var gen = new SwedishGenerator();
|
||||
|
||||
// Pattern "APP--" for length 5
|
||||
@@ -225,12 +237,12 @@ public class SwedishGeneratorTest {
|
||||
lenCounts[8] = 10; // In case MAX_WORD_LENGTH is 8
|
||||
|
||||
// Empty grid should have high penalty (no slots)
|
||||
var f1 = gen.maskFitness(grid, lenCounts);
|
||||
var f1 = gen.maskFitness(grid);
|
||||
assertTrue(f1 >= 1_000_000_000L);
|
||||
|
||||
// Add a slot
|
||||
grid.setClue(0, SwedishGenerator.OFFSETS[2].dbyte());
|
||||
var f2 = gen.maskFitness(grid, lenCounts);
|
||||
var f2 = gen.maskFitness(grid);
|
||||
assertTrue(f2 < f1);
|
||||
}
|
||||
|
||||
@@ -251,7 +263,7 @@ public class SwedishGeneratorTest {
|
||||
|
||||
var lenCounts = new int[12];
|
||||
Arrays.fill(lenCounts, 10);
|
||||
var g4 = gen.hillclimb(rng, g1, lenCounts, 10);
|
||||
var g4 = gen.hillclimb(rng, g1, 10);
|
||||
assertNotNull(g4);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user