mirror of
https://github.com/hneemann/Digital.git
synced 2025-09-13 14:56:29 -04:00
added gui test for net renaming
This commit is contained in:
parent
e43355eda8
commit
dce75d9667
@ -16,6 +16,7 @@ import de.neemann.digital.core.io.Out;
|
||||
import de.neemann.digital.core.memory.ROM;
|
||||
import de.neemann.digital.core.wiring.Driver;
|
||||
import de.neemann.digital.draw.elements.Circuit;
|
||||
import de.neemann.digital.draw.elements.Tunnel;
|
||||
import de.neemann.digital.draw.elements.VisualElement;
|
||||
import de.neemann.digital.draw.elements.Wire;
|
||||
import de.neemann.digital.draw.graphics.GraphicMinMax;
|
||||
@ -62,7 +63,7 @@ import static de.neemann.digital.testing.TestCaseElement.TESTDATA;
|
||||
* These tests are excluded from the maven build because gui tests are sometimes fragile.
|
||||
* They may not behave as expected on all systems.
|
||||
* Run this tests directly from your IDE.
|
||||
*
|
||||
* <p>
|
||||
* maven: mvn -Dtest=TestInGUI test
|
||||
*/
|
||||
public class TestInGUI extends TestCase {
|
||||
@ -240,14 +241,14 @@ public class TestInGUI extends TestCase {
|
||||
.add(new EnterTruthTable(0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1))
|
||||
.press("F1")
|
||||
.delay(500)
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 146, 110, new Color(215,175,175)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 266, 109, new Color(187,187,221)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 86, 169, new Color(255,187,187)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 205, 169, new Color(127,255,127)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 145, 228, new Color(127,127,255)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 266, 230, new Color(255,175,255)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 86, 288, new Color(242,242,191)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 205, 289, new Color(127,255,255)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 146, 110, new Color(215, 175, 175)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 266, 109, new Color(187, 187, 221)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 86, 169, new Color(255, 187, 187)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 205, 169, new Color(127, 255, 127)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 145, 228, new Color(127, 127, 255)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 266, 230, new Color(255, 175, 255)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 86, 288, new Color(242, 242, 191)))
|
||||
.add(new GuiTester.ColorPicker(KarnaughMapComponent.class, 205, 289, new Color(127, 255, 255)))
|
||||
// .add(new GuiTester.ColorPickerCreator(KarnaughMapComponent.class))
|
||||
// .ask("Shows the k-map a checkerboard pattern?")
|
||||
.add(new GuiTester.CloseTopMost())
|
||||
@ -954,6 +955,31 @@ public class TestInGUI extends TestCase {
|
||||
.execute();
|
||||
}
|
||||
|
||||
public void testNetRename() {
|
||||
new GuiTester("dig/net/netRename.dig")
|
||||
.add(new SetMouseToElement(v -> v.equalsDescription(Tunnel.DESCRIPTION) && v.getPos().x < 400))
|
||||
.mouseClick(InputEvent.BUTTON3_MASK)
|
||||
.delay(200)
|
||||
.type("et")
|
||||
.press("ENTER")
|
||||
.delay(200)
|
||||
.add(new GuiTester.CheckTextInWindow<>(JDialog.class, "'net'"))
|
||||
.delay(200)
|
||||
.press("ENTER")
|
||||
.delay(200)
|
||||
.add(new GuiTester.WindowCheck<Main>(Main.class){
|
||||
@Override
|
||||
public void checkWindow(GuiTester guiTester, Main main) {
|
||||
List<VisualElement> e = main.getCircuitComponent().getCircuit()
|
||||
.findElements(v -> v.equalsDescription(Tunnel.DESCRIPTION));
|
||||
assertEquals(3, e.size());
|
||||
for (VisualElement v : e)
|
||||
assertEquals("net", v.getElementAttributes().get(Keys.NETNAME));
|
||||
}
|
||||
})
|
||||
.execute();
|
||||
}
|
||||
|
||||
public void testFSM() {
|
||||
new GuiTester()
|
||||
.press("F10")
|
||||
|
113
src/test/resources/dig/net/netRename.dig
Normal file
113
src/test/resources/dig/net/netRename.dig
Normal file
@ -0,0 +1,113 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<circuit>
|
||||
<version>1</version>
|
||||
<attributes/>
|
||||
<visualElements>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="360" y="140"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Tunnel</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>NetName</string>
|
||||
<string>n</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="380" y="140"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Tunnel</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="2"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>NetName</string>
|
||||
<string>n</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="500" y="140"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Tunnel</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="2"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>NetName</string>
|
||||
<string>n</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="500" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Y</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="580" y="140"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>X</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="580" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Not</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="520" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Testcase</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Testdata</string>
|
||||
<testData>
|
||||
<dataString>A Y X
|
||||
0 0 1
|
||||
1 1 0</dataString>
|
||||
</testData>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="420" y="220"/>
|
||||
</visualElement>
|
||||
</visualElements>
|
||||
<wires>
|
||||
<wire>
|
||||
<p1 x="500" y="180"/>
|
||||
<p2 x="520" y="180"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="560" y="180"/>
|
||||
<p2 x="580" y="180"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="360" y="140"/>
|
||||
<p2 x="380" y="140"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="500" y="140"/>
|
||||
<p2 x="580" y="140"/>
|
||||
</wire>
|
||||
</wires>
|
||||
<measurementOrdering/>
|
||||
</circuit>
|
Loading…
x
Reference in New Issue
Block a user