--- a/tests/tools/test_application.py Sat Sep 16 21:22:53 2017 +0300
+++ b/tests/tools/test_application.py Sat Sep 16 21:24:22 2017 +0300
@@ -33,6 +33,7 @@
class UserApplicationTest(unittest.TestCase):
@@ -110,14 +111,16 @@
self.app.frame.ProjectTree.ExpandAll()
item = self.app.frame.ProjectTree.GetRootItem()
+ skip = self.GetSkippedProjectTreeItems() + tree_id = self.app.frame.ProjectTree.GetId() self.app.frame.ProjectTree.SelectItem(item, True)
- id = self.app.frame.ProjectTree.GetId()
- event = wx.lib.agw.customtreectrl.TreeEvent(
- wx.lib.agw.customtreectrl.wxEVT_TREE_ITEM_ACTIVATED,
- self.app.frame.OnProjectTreeItemActivated(event)
+ event = wx.lib.agw.customtreectrl.TreeEvent( + wx.lib.agw.customtreectrl.wxEVT_TREE_ITEM_ACTIVATED, + self.app.frame.OnProjectTreeItemActivated(event) item = self.app.frame.ProjectTree.GetNextVisible(item)
@@ -177,5 +180,42 @@
self.CheckTestProject(project)
+class PLCOpenEditorApplicationTest(BeremizApplicationTest): + """Test PLCOpenEditor as whole application""" + self.app = PLCOpenEditor.PLCOpenEditorApp() + # disable default exception handler in application + self.app.InstallExceptionHandler = lambda: None + self.InstallExceptionHandler() + self.app.frame.ShowFullScreen(True) + wx.CallAfter(self.app.frame.Close) + def GetSkippedProjectTreeItems(self): + Returns the list of skipped items in the project tree. + Root item opens dialog window for project settings. + To avoid code that handles closing dialog windows just skip this item. + return [self.app.frame.ProjectTree.GetRootItem()] + def GetUserActions(self): + def GetProjectPath(self, project): + """Open PLC program in every Beremiz test project""" + project_dir = BeremizApplicationTest.GetProjectPath(self, project) + return os.path.join(project_dir, "plc.xml") if __name__ == '__main__':