introduce bitloops

This commit is contained in:
mike
2026-01-16 22:52:48 +01:00
parent 91722ecc60
commit 5c7d1120db

View File

@@ -8,6 +8,7 @@ import puzzle.Export.Gridded;
import puzzle.Export.LetterVisit.LetterAt;
import puzzle.Export.PuzzleResult;
import puzzle.Export.Rewards;
import puzzle.ExportFormatTest.Clue;
import puzzle.Main.Opts;
import puzzle.SwedishGenerator.Rng;
import puzzle.SwedishGenerator.Slot;
@@ -16,6 +17,7 @@ import java.util.stream.Collectors;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static puzzle.ExportFormatTest.Clue.*;
import static puzzle.SwedishGenerator.*;
import static puzzle.SwedishGeneratorTest.*;
import static puzzle.SwedishGeneratorTest.Idx.IDX_0_0;
@@ -126,16 +128,16 @@ public class MainTest {
@Test
public void testCluesDeepCopy() {
var grid = Clues.createEmpty();
grid.setClueLo(IDX_0_0.lo, (byte) 1);
grid.setClueLo(IDX_0_1.lo, (byte) 2);
grid.setClueLo(IDX_1_0.lo, (byte) 3);
grid.setClueLo(IDX_1_1.lo, (byte) 0);
grid.setClueLo(IDX_0_0.lo, RIGHT.dir);
grid.setClueLo(IDX_0_1.lo, UP.dir);
grid.setClueLo(IDX_1_0.lo, LEFT.dir);
grid.setClueLo(IDX_1_1.lo, DOWN.dir);
var copy = grid.deepCopyGrid();
Assertions.assertEquals(1, copy.digitAtLo(0));
copy.setClueLo(IDX_0_0.lo, (byte) 3);
Assertions.assertEquals(3, copy.digitAtLo(0));
copy.setClueLo(IDX_0_0.lo, DOWN.dir);
Assertions.assertEquals(DOWN.dir, copy.digitAtLo(0));
Assertions.assertEquals(1, grid.digitAtLo(0)); // Original should be unchanged
}
@Test