use of de.neemann.digital.draw.shapes.GenericShape.SIZE in project Digital by hneemann.
the class TestInGUI method testShortcutsPlusMinus.
public void testShortcutsPlusMinus() {
new GuiTester().mouseMove(100 + SIZE * 2, 100 + SIZE * 2).add(new GuiTester.WindowCheck<>(Main.class, (gt, main) -> {
final CircuitComponent cc = main.getCircuitComponent();
final VisualElement ve = new VisualElement(And.DESCRIPTION.getName()).setShapeFactory(cc.getLibrary().getShapeFactory());
cc.setPartToInsert(ve);
})).mouseClick(InputEvent.BUTTON1_MASK).mouseMove(100, 100).press("PLUS").press("PLUS").add(new GuiTester.WindowCheck<>(Main.class, (gt, main) -> {
final Circuit c = main.getCircuitComponent().getCircuit();
assertEquals(1, c.getElements().size());
assertEquals(4, (int) c.getElements().get(0).getElementAttributes().get(Keys.INPUT_COUNT));
})).press("MINUS").press("MINUS").add(new GuiTester.WindowCheck<>(Main.class, (gt, main) -> {
final Circuit c = main.getCircuitComponent().getCircuit();
assertEquals(1, c.getElements().size());
assertEquals(2, (int) c.getElements().get(0).getElementAttributes().get(Keys.INPUT_COUNT));
})).execute();
}
use of de.neemann.digital.draw.shapes.GenericShape.SIZE in project Digital by hneemann.
the class TestInGUI method test74xxFunctions.
public void test74xxFunctions() {
new GuiTester("dig/manualError/10_74xx.dig").press("F10").press("RIGHT", 2).press("DOWN", 4).press("RIGHT").press("DOWN", 2).press("ENTER").add(new ClickInputsAndOutputs()).press("ESCAPE").add(new GuiTester.WindowCheck<>(Main.class, (guiTester, main) -> {
final CircuitComponent cc = main.getCircuitComponent();
ArrayList<VisualElement> el = cc.getCircuit().getElements();
int n = 0;
for (VisualElement ve : el) if (ve.equalsDescription(In.DESCRIPTION) || ve.equalsDescription(Out.DESCRIPTION)) {
n++;
assertEquals("" + n, ve.getElementAttributes().get(Keys.PINNUMBER));
}
})).add(new SelectAll()).press("F10").press("RIGHT", 2).press("DOWN", 5).press("RIGHT").press("ENTER").type("U").press("ENTER").add(new PinNameChecker("UC")).press("F10").press("RIGHT", 2).press("DOWN", 5).press("RIGHT").press("DOWN").press("ENTER").add(new PinNameChecker("C")).press("F10").press("RIGHT", 2).press("DOWN", 5).press("RIGHT").press("DOWN", 3).press("ENTER").add(new GuiTester.WindowCheck<>(Main.class, (guiTester, main) -> {
final CircuitComponent cc = main.getCircuitComponent();
ArrayList<VisualElement> el = cc.getCircuit().getElements();
for (VisualElement ve : el) if (ve.equalsDescription(In.DESCRIPTION) || ve.equalsDescription(Out.DESCRIPTION))
assertEquals("", ve.getElementAttributes().get(Keys.PINNUMBER));
})).press("F10").press("RIGHT", 2).press("DOWN", 5).press("RIGHT").press("DOWN", 4).press("ENTER").mouseClick(InputEvent.BUTTON1_MASK).add(new GuiTester.WindowCheck<>(Main.class, (gt, main) -> assertEquals(7, main.getCircuitComponent().getCircuit().getElements().size()))).execute();
}
use of de.neemann.digital.draw.shapes.GenericShape.SIZE in project Digital by hneemann.
the class ScreenShots method firstSteps.
// Set all settings as needed before start this method
private static void firstSteps() {
ScreenShot.n = 0;
int x = 300;
int y = 180;
new GuiTester().add(new GuiTester.WindowCheck<>(Main.class, (gt, w) -> w.setSize(WIN_DX, WIN_DY))).press("F10").press("RIGHT", 5).press("DOWN", 2).press("RIGHT").press("DOWN", 2).add(new ScreenShot<>(Main.class)).press("ENTER").add(new ClickAtCircuit(x, y, InputEvent.BUTTON1_MASK)).add(new ScreenShot<>(Main.class)).press("typed l").add(new ClickAtCircuit(x, y + SIZE * 2, InputEvent.BUTTON1_MASK)).add(new ScreenShot<>(Main.class)).press("F10").press("RIGHT", 5).press("DOWN", 1).press("RIGHT").press("DOWN", 4).add(new ScreenShot<>(Main.class)).press("ENTER").add(new ClickAtCircuit(x + SIZE * 5, y + SIZE, InputEvent.BUTTON1_MASK)).add(new ScreenShot<>(Main.class)).press("F10").press("RIGHT", 5).press("DOWN", 2).press("RIGHT").add(new ScreenShot<>(Main.class)).press("ENTER").add(new ClickAtCircuit(x + SIZE * 9, y + SIZE, InputEvent.BUTTON1_MASK)).add(new ScreenShot<>(Main.class)).add(new ClickAtCircuit(x, y - SIZE, InputEvent.BUTTON1_MASK)).add(new ClickAtCircuit(x + SIZE * 2, y - SIZE, InputEvent.BUTTON1_MASK)).add(new ClickAtCircuit(x, y + SIZE, InputEvent.BUTTON1_MASK)).add(new ClickAtCircuit(x + SIZE * 2, y + SIZE, InputEvent.BUTTON1_MASK)).add(new ClickAtCircuit(x + SIZE * 5, y, InputEvent.BUTTON1_MASK)).add(new ClickAtCircuit(x + SIZE * 7, y, InputEvent.BUTTON1_MASK)).add(new ScreenShot<>(Main.class)).press(' ').add(new ScreenShot<>(Main.class)).add(new ClickAtCircuit(x - SIZE, y - SIZE, InputEvent.BUTTON1_MASK)).add(new ScreenShot<>(Main.class)).press(' ').add(new ClickAtCircuit(x - SIZE, y - SIZE, InputEvent.BUTTON3_MASK)).press("shift typed a").add(new ScreenShot<>(AttributeDialog.class).useParent()).press("ENTER").add(new ClickAtCircuit(x - SIZE, y + SIZE, InputEvent.BUTTON3_MASK)).press("shift typed b", "ENTER").add(new ClickAtCircuit(x + SIZE * 8, y, InputEvent.BUTTON3_MASK)).press("shift typed y", "ENTER").press("F10").press("RIGHT", 4).press("DOWN", 1).add(new ScreenShot<>(Main.class)).press("ENTER").delay(500).add(new GuiTester.WindowCheck<>(TableDialog.class, (gt, td) -> {
final Point location = td.getParent().getLocation();
location.x += 10;
location.y += 10;
td.setLocation(location);
td.getContentPane().setPreferredSize(new Dimension(370, 400));
td.pack();
})).delay(500).add(new ScreenShot<>(TableDialog.class).useParent()).press("F10").press("RIGHT", 5).press("DOWN", 1).add(new ScreenShot<>(TableDialog.class).useParent()).press("ENTER").delay(500).add(new GuiTester.WindowCheck<>(KarnaughMapDialog.class, (gt, td) -> {
td.getContentPane().setPreferredSize(new Dimension(300, 300));
td.pack();
})).delay(500).add(new ScreenShot<>(KarnaughMapDialog.class).useParent().useParent()).execute();
}
Aggregations