Gather data
This commit is contained in:
@@ -1,10 +1,9 @@
|
||||
package puzzle;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import puzzle.ExportFormat.ExportedPuzzle;
|
||||
import puzzle.ExportFormat.Gridded;
|
||||
import puzzle.ExportFormat.Rewards;
|
||||
import puzzle.Main.PuzzleResult;
|
||||
import puzzle.Export.Gridded;
|
||||
import puzzle.Export.Rewards;
|
||||
import puzzle.Export.PuzzleResult;
|
||||
import puzzle.SwedishGenerator.FillResult;
|
||||
import puzzle.SwedishGenerator.Grid;
|
||||
import puzzle.SwedishGenerator.Lemma;
|
||||
@@ -26,8 +25,8 @@ public class ExportFormatTest {
|
||||
|
||||
var clueMap = new HashMap<Integer, Lemma>();
|
||||
// key = (cellIndex << 4) | direction
|
||||
int key = (0 << 4) | 2;
|
||||
Lemma lemma = new Lemma("TEST", 1, "A test word");
|
||||
var key = (0 << 4) | 2;
|
||||
var lemma = new Lemma("TEST", 1, "A test word");
|
||||
clueMap.put(key, lemma);
|
||||
|
||||
// Manually fill the grid letters for "TEST" at (0,1), (0,2), (0,3), (0,4)
|
||||
@@ -41,8 +40,8 @@ public class ExportFormatTest {
|
||||
var fillResult = new FillResult(true, new Gridded(grid), clueMap, null);
|
||||
var puzzleResult = new PuzzleResult(swe, null, null, fillResult);
|
||||
|
||||
Rewards rewards = new Rewards(10, 5, 1);
|
||||
ExportedPuzzle exported = ExportFormat.exportFormatFromFilled(puzzleResult, 2, rewards);
|
||||
var rewards = new Rewards(10, 5, 1);
|
||||
var exported = puzzleResult.exportFormatFromFilled(2, rewards);
|
||||
|
||||
assertNotNull(exported);
|
||||
assertEquals(2, exported.difficulty());
|
||||
@@ -81,13 +80,13 @@ public class ExportFormatTest {
|
||||
var fillResult = new FillResult(true, new Gridded(grid), new HashMap<>(), null);
|
||||
var puzzleResult = new PuzzleResult(swe, null, null, fillResult);
|
||||
|
||||
ExportedPuzzle exported = ExportFormat.exportFormatFromFilled(puzzleResult, 1, new Rewards(0, 0, 0));
|
||||
var exported = puzzleResult.exportFormatFromFilled(1, new Rewards(0, 0, 0));
|
||||
|
||||
assertNotNull(exported);
|
||||
assertEquals(0, exported.words().length);
|
||||
// Should return full grid with '#'
|
||||
assertEquals(SwedishGenerator.R, exported.gridv2().size());
|
||||
for (String row : exported.gridv2()) {
|
||||
for (var row : exported.gridv2()) {
|
||||
assertEquals(SwedishGenerator.C, row.length());
|
||||
assertTrue(row.matches("#+"));
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ package puzzle;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import puzzle.Main.PuzzleResult;
|
||||
import puzzle.Export.PuzzleResult;
|
||||
import puzzle.SwedishGenerator.Rng;
|
||||
import puzzle.SwedishGenerator.Slot;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
@@ -64,7 +64,7 @@ public class MainTest {
|
||||
grid.setClue(0, (byte) '2'); // right
|
||||
|
||||
var count = new AtomicInteger(0);
|
||||
generator.forEachSlot(grid, (key, packedPos, len) -> {
|
||||
grid.forEachSlot((key, packedPos, len) -> {
|
||||
count.incrementAndGet();
|
||||
assertEquals(8, len);
|
||||
assertEquals(0, Grid.r(Slot.offset(packedPos, 0)));
|
||||
|
||||
@@ -3,6 +3,7 @@ package puzzle;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import puzzle.SwedishGenerator.*;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Arrays;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
@@ -103,7 +104,7 @@ public class SwedishGeneratorTest {
|
||||
@Test
|
||||
void testLemmaAndDict() {
|
||||
var l1 = new Lemma("APPLE", 5, "A fruit");
|
||||
Assertions.assertArrayEquals("APPLE".getBytes(java.nio.charset.StandardCharsets.US_ASCII), l1.word());
|
||||
Assertions.assertArrayEquals("APPLE".getBytes(StandardCharsets.US_ASCII), l1.word());
|
||||
assertEquals(5, l1.word().length);
|
||||
assertEquals(5, l1.simpel());
|
||||
assertEquals((byte) 'A', l1.byteAt(0));
|
||||
@@ -116,7 +117,7 @@ public class SwedishGeneratorTest {
|
||||
|
||||
var entry3 = dict.index()[3];
|
||||
assertEquals(1, entry3.words().size());
|
||||
Assertions.assertArrayEquals("AXE".getBytes(java.nio.charset.StandardCharsets.US_ASCII), entry3.words().getFirst().word());
|
||||
Assertions.assertArrayEquals("AXE".getBytes(StandardCharsets.US_ASCII), entry3.words().getFirst().word());
|
||||
|
||||
// Check pos indexing
|
||||
// AXE: A at 0, X at 1, E at 2
|
||||
@@ -181,7 +182,7 @@ public class SwedishGeneratorTest {
|
||||
// Pattern "APP--" for length 5
|
||||
var context = new Context();
|
||||
context.setPatter(new byte[]{ 'A', 'P', 'P', SwedishGenerator.DASH, SwedishGenerator.DASH });
|
||||
var info = gen.candidateInfoForPattern(context, dict.index()[5], 5);
|
||||
var info = SwedishGenerator.candidateInfoForPattern(context, dict.index()[5], 5);
|
||||
|
||||
assertEquals(2, info.count());
|
||||
assertNotNull(info.indices());
|
||||
|
||||
Reference in New Issue
Block a user