Completed
Push — master ( 335e61...922ee3 )
by Olivier
51s
created

tests.py (2 issues)

1
2
import unittest
3
import sys
4
print("SYS:PATH", sys.path)
5
sys.path.insert(0, "python-opcua")
6
sys.path.insert(0, "opcua-widgets")
7
import os
8
print("PWD", os.getcwd())
9
10
from opcua import ua
11
12
from PyQt5.QtCore import QTimer, QSettings, QModelIndex, Qt, QCoreApplication
13
from PyQt5.QtWidgets import QApplication
14
from PyQt5.QtTest import QTest
15
16
from uamodeler.uamodeler import UaModeler
17
from uawidgets.new_node_dialogs import NewNodeBaseDialog, NewUaObjectDialog, NewUaVariableDialog, NewUaMethodDialog
18
19
20
class Tester(unittest.TestCase):
21
    def setUp(self):
22
        self.modeler = UaModeler()
23
        self.modeler.ui.actionNew.activate(0)
24
        #modeler.show()
25
        #sys.exit(app.exec_())
26
27
    def tearDown(self):
28
        self.modeler.server.stop()
29
30
    def test_add_folder(self):
31
        objects = self.modeler.server.nodes.objects
32
        self.modeler.tree_ui.set_current_node("Objects")
33
        self.assertEqual(objects, self.modeler.tree_ui.get_current_node())
34
        #self.modeler.ui.actionAddFolder.activate(0)  # we cannot call this, we need a link to dialog
35
        dia = NewNodeBaseDialog(self.modeler, "Add Folder", self.modeler.server)
36
        args = dia.get_args()
37 View Code Duplication
        new_node = objects.add_folder(*args)
0 ignored issues
show
This code seems to be duplicated in your project.
Loading history...
38
        self.assertIn(new_node, objects.get_children())
39
40
    def test_add_variable_double(self):
41
        objects = self.modeler.server.nodes.objects
42
        self.modeler.tree_ui.set_current_node("Objects")
43
        self.assertEqual(objects, self.modeler.tree_ui.get_current_node())
44
        dia = NewUaVariableDialog(self.modeler, "Add Variable", self.modeler.server, default_value=9.99, dtype=ua.ObjectIds.Double)
45
        args = dia.get_args()
46 View Code Duplication
        new_node = objects.add_variable(*args)
0 ignored issues
show
This code seems to be duplicated in your project.
Loading history...
47
        self.assertIn(new_node, objects.get_children())
48
49
    def test_add_variable_string(self):
50
        objects = self.modeler.server.nodes.objects
51
        self.modeler.tree_ui.set_current_node("Objects")
52
        self.assertEqual(objects, self.modeler.tree_ui.get_current_node())
53
        dia = NewUaVariableDialog(self.modeler, "Add Variable", self.modeler.server, default_value="lkjkl", dtype=ua.ObjectIds.String)
54
        args = dia.get_args()
55
        new_node = objects.add_variable(*args)
56
        self.assertIn(new_node, objects.get_children())
57
58
59
60
if __name__ == "__main__":
61
    app = QApplication(sys.argv)
62
    unittest.main()
63
64
65