diff --git a/diylc/diylc-library/lib/diylc-core.jar b/diylc/diylc-library/lib/diylc-core.jar index 55e12312..9803f9fc 100644 Binary files a/diylc/diylc-library/lib/diylc-core.jar and b/diylc/diylc-library/lib/diylc-core.jar differ diff --git a/diylc/diylc-swing/.classpath b/diylc/diylc-swing/.classpath index e7dc1029..77c36058 100644 --- a/diylc/diylc-swing/.classpath +++ b/diylc/diylc-swing/.classpath @@ -1,21 +1,22 @@ - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + diff --git a/diylc/diylc-swing/lib/diylc-core.jar b/diylc/diylc-swing/lib/diylc-core.jar index 55e12312..9803f9fc 100644 Binary files a/diylc/diylc-swing/lib/diylc-core.jar and b/diylc/diylc-swing/lib/diylc-core.jar differ diff --git a/diylc/diylc-swing/library/main.jar b/diylc/diylc-swing/library/main.jar index cd226066..33ab2867 100644 Binary files a/diylc/diylc-swing/library/main.jar and b/diylc/diylc-swing/library/main.jar differ diff --git a/diylc/diylc-swing/test/org/diylc/MockView.java b/diylc/diylc-swing/test/org/diylc/MockView.java new file mode 100644 index 00000000..69659768 --- /dev/null +++ b/diylc/diylc-swing/test/org/diylc/MockView.java @@ -0,0 +1,37 @@ +package org.diylc; + +import java.io.File; +import java.util.List; +import java.util.Set; + +import org.diylc.common.PropertyWrapper; +import org.diylc.core.IView; + +public class MockView implements IView { + + @Override + public void showMessage(String message, String title, int messageType) { + // TODO Auto-generated method stub + + } + + @Override + public int showConfirmDialog(String message, String title, int optionType, int messageType) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public boolean editProperties(List properties, + Set defaultedProperties) { + // TODO Auto-generated method stub + return false; + } + + @Override + public File promptFileSave() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/diylc/diylc-swing/test/org/diylc/PresenterTests.java b/diylc/diylc-swing/test/org/diylc/PresenterTests.java new file mode 100644 index 00000000..f9bad25c --- /dev/null +++ b/diylc/diylc-swing/test/org/diylc/PresenterTests.java @@ -0,0 +1,27 @@ +package org.diylc; + +import java.awt.Point; + +import org.junit.Test; + +import junit.framework.Assert; + +public class PresenterTests extends TestBase { + + @Test + public void testComponentLoad() { + Assert.assertTrue(presenter.getComponentTypes() != null && presenter.getComponentTypes().size() > 0); + } + + @Test + public void testTwoClickAdd() { + instantiateTwoClick("Passive", "Resistor", new Point(1000, 1000), new Point(1200, 1000)); + Assert.assertEquals(1, presenter.getCurrentProject().getComponents().size()); + } + + @Test + public void testOneClickAdd() { + instantiateOneClick("Connectivity", "Solder Pad", new Point(1000, 1000)); + Assert.assertEquals(1, presenter.getCurrentProject().getComponents().size()); + } +} diff --git a/diylc/diylc-swing/test/org/diylc/TestBase.java b/diylc/diylc-swing/test/org/diylc/TestBase.java new file mode 100644 index 00000000..160c1e1f --- /dev/null +++ b/diylc/diylc-swing/test/org/diylc/TestBase.java @@ -0,0 +1,39 @@ +package org.diylc; + +import java.awt.Point; +import java.awt.event.MouseEvent; +import java.util.List; +import java.util.Map; + +import org.diylc.appframework.miscutils.ConfigurationManager; +import org.diylc.common.ComponentType; +import org.diylc.core.IView; +import org.diylc.presenter.Presenter; + +public class TestBase { + + protected Presenter presenter; + protected IView view; + + public TestBase() { + ConfigurationManager.initialize("diylc-test"); + view = new MockView(); + presenter = new Presenter(view); + } + + protected void instantiateOneClick(String category, String name, Point point1) { + Map> componentTypes = presenter.getComponentTypes(); + ComponentType resistorType = componentTypes.get(category).stream().filter(x -> x.getName().equals(name)).findFirst().get(); + presenter.setNewComponentTypeSlot(resistorType, null, false); + presenter.mouseClicked(point1, MouseEvent.BUTTON1, false, false, false, 1); + } + + protected void instantiateTwoClick(String category, String name, Point point1, Point point2) { + Map> componentTypes = presenter.getComponentTypes(); + ComponentType resistorType = componentTypes.get(category).stream().filter(x -> x.getName().equals(name)).findFirst().get(); + presenter.setNewComponentTypeSlot(resistorType, null, false); + presenter.mouseClicked(point1, MouseEvent.BUTTON1, false, false, false, 1); + presenter.mouseMoved(point2, false, false, false); + presenter.mouseClicked(point2, MouseEvent.BUTTON1, false, false, false, 1); + } +}