public void testMinimumMaximum() { LayoutRequirements[] children = new LayoutRequirements[3]; children[0] = new LayoutRequirements(1, 20, 4.0); children[1] = new LayoutRequirements(1, 10000, 1.0); children[2] = new LayoutRequirements(1, 10000, 2.0); int[] spans = LayoutRequirements.calculateTiledPositions(0, children); assertEquals(3, spans[0] + spans[1] + spans[2]); assertEquals(1, spans[0]); assertEquals(1, spans[1]); spans = LayoutRequirements.calculateTiledPositions(4, children); assertEquals(4, spans[0] + spans[1] + spans[2]); assertEquals(2, spans[0]); assertEquals(1, spans[1]); spans = LayoutRequirements.calculateTiledPositions(7, children); assertEquals(7, spans[0] + spans[1] + spans[2]); assertEquals(4, spans[0]); assertEquals(1, spans[1]); spans = LayoutRequirements.calculateTiledPositions(28, children); assertEquals(28, spans[0] + spans[1] + spans[2]); assertEquals(16, spans[0]); assertEquals(4, spans[1]); spans = LayoutRequirements.calculateTiledPositions(100, children); assertEquals(100, spans[0] + spans[1] + spans[2]); assertEquals(20, spans[0]); assertTrue(spans[1] == 26 || spans[1] == 27); }
public void testBasic() { LayoutRequirements[] children = new LayoutRequirements[3]; children[0] = new LayoutRequirements(20, Integer.MAX_VALUE, 1.0); children[1] = new LayoutRequirements(20, Integer.MAX_VALUE, 1.0); children[2] = new LayoutRequirements(20, Integer.MAX_VALUE, 1.0); // System.out.println(LayoutRequirements.getTiledLayoutRequirements(children)); int[] spans = LayoutRequirements.calculateTiledPositions(99, children); // System.out.println(spans[0] + " - " + spans[1] + " - " + spans[2]); assertEquals(99, spans[0] + spans[1] + spans[2]); assertEquals(33, spans[0]); assertEquals(33, spans[1]); }
public void testWeight() { LayoutRequirements[] children = new LayoutRequirements[2]; children[1] = new LayoutRequirements(1, Integer.MAX_VALUE, 1.0); children[0] = new LayoutRequirements(1, Integer.MAX_VALUE, 1.0); int[] spans = LayoutRequirements.calculateTiledPositions(100, children); assertEquals(100, spans[0] + spans[1]); assertEquals(50, spans[0]); children[0] = new LayoutRequirements(1, Integer.MAX_VALUE, 2.0); spans = LayoutRequirements.calculateTiledPositions(100, children); assertEquals(100, spans[0] + spans[1]); assertTrue(spans[0] == 66 || spans[0] == 67); children[0] = new LayoutRequirements(50, Integer.MAX_VALUE, 2.0); spans = LayoutRequirements.calculateTiledPositions(100, children); assertEquals(100, spans[0] + spans[1]); assertTrue(spans[0] == 66 || spans[0] == 67); children[0] = new LayoutRequirements(80, Integer.MAX_VALUE, 2.0); spans = LayoutRequirements.calculateTiledPositions(100, children); assertEquals(100, spans[0] + spans[1]); assertEquals(80, spans[0]); children[0] = new LayoutRequirements(80, 80, 2.0); spans = LayoutRequirements.calculateTiledPositions(100, children); assertEquals(100, spans[0] + spans[1]); assertEquals(80, spans[0]); children[0] = new LayoutRequirements(50, 60, 2.0); spans = LayoutRequirements.calculateTiledPositions(100, children); assertEquals(100, spans[0] + spans[1]); assertEquals(60, spans[0]); children[0] = new LayoutRequirements(1, 60, 2.0); spans = LayoutRequirements.calculateTiledPositions(100, children); assertEquals(100, spans[0] + spans[1]); assertEquals(60, spans[0]); }