Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
opcua-asyncio
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Nikola Balog
opcua-asyncio
Commits
272865bb
Commit
272865bb
authored
May 02, 2018
by
oroulet
Committed by
Christian Bergmiller
Jul 30, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
cherry-pick/merge
183a6b74
parent
92a8deae
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
25 additions
and
83 deletions
+25
-83
tests/tests_common.py
tests/tests_common.py
+25
-83
No files found.
tests/tests_common.py
View file @
272865bb
...
...
@@ -74,22 +74,6 @@ async def add_server_methods(srv):
[
ua
.
VariantType
.
Int64
,
ua
.
VariantType
.
Int64
,
ua
.
VariantType
.
Int64
])
def
_test_modelling_rules
(
test
,
parent
,
mandatory
,
result
):
f
=
parent
.
add_folder
(
3
,
'MyFolder'
)
f
.
set_modelling_rule
(
mandatory
)
test
.
assertEqual
(
f
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
o
=
parent
.
add_object
(
3
,
'MyObject'
)
o
.
set_modelling_rule
(
mandatory
)
test
.
assertEqual
(
o
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
v
=
parent
.
add_variable
(
3
,
'MyVariable'
,
6
)
v
.
set_modelling_rule
(
mandatory
)
test
.
assertEqual
(
v
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
p
=
parent
.
add_property
(
3
,
'MyProperty'
,
10
)
p
.
set_modelling_rule
(
mandatory
)
test
.
assertEqual
(
p
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
class
CommonTests
(
object
):
...
...
@@ -624,77 +608,25 @@ class CommonTests(object):
self
.
assertTrue
(
v
in
childs
)
self
.
assertTrue
(
p
in
childs
)
def
test_add_nodes_modelling_rules_type_default
(
self
):
base_otype
=
self
.
opc
.
get_node
(
ua
.
ObjectIds
.
BaseObjectType
)
custom_otype
=
base_otype
.
add_object_type
(
2
,
'MyFooObjectType'
)
result
=
[
self
.
opc
.
get_node
(
ua
.
ObjectIds
.
ModellingRule_Mandatory
)]
f
=
custom_otype
.
add_folder
(
3
,
'MyFolder'
)
self
.
assertEqual
(
f
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
o
=
custom_otype
.
add_object
(
3
,
'MyObject'
)
self
.
assertEqual
(
o
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
v
=
custom_otype
.
add_variable
(
3
,
'MyVariable'
,
6
)
self
.
assertEqual
(
v
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
p
=
custom_otype
.
add_property
(
3
,
'MyProperty'
,
10
)
self
.
assertEqual
(
p
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
m
=
base_otype
.
get_child
([
'2:ObjectWithMethodsType'
,
'2:ServerMethodDefault'
])
self
.
assertEqual
(
m
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
objects
=
self
.
opc
.
get_objects_node
()
c
=
objects
.
get_child
([
'2:ObjectWithMethods'
,
'2:ServerMethodDefault'
])
def
test_add_nodes_modelling_rules_type_true
(
self
):
base_otype
=
self
.
opc
.
get_node
(
ua
.
ObjectIds
.
BaseObjectType
)
custom_otype
=
base_otype
.
add_object_type
(
2
,
'MyFooObjectType'
)
result
=
[
self
.
opc
.
get_node
(
ua
.
ObjectIds
.
ModellingRule_Mandatory
)]
_test_modelling_rules
(
self
,
custom_otype
,
True
,
result
)
m
=
base_otype
.
get_child
([
'2:ObjectWithMethodsType'
,
'2:ServerMethodMandatory'
])
self
.
assertEqual
(
m
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
objects
=
self
.
opc
.
get_objects_node
()
objects
.
get_child
([
'2:ObjectWithMethods'
,
'2:ServerMethodMandatory'
])
def
test_add_nodes_modelling_rules_type_false
(
self
):
base_otype
=
self
.
opc
.
get_node
(
ua
.
ObjectIds
.
BaseObjectType
)
custom_otype
=
base_otype
.
add_object_type
(
2
,
'MyFooObjectType'
)
result
=
[
self
.
opc
.
get_node
(
ua
.
ObjectIds
.
ModellingRule_Optional
)]
_test_modelling_rules
(
self
,
custom_otype
,
False
,
result
)
def
test_modelling_rules
(
self
):
obj
=
self
.
opc
.
nodes
.
base_object_type
.
add_object_type
(
2
,
'MyFooObjectType'
)
v
=
obj
.
add_variable
(
2
,
"myvar"
,
1.1
)
v
.
set_modelling_rule
(
True
)
p
=
obj
.
add_property
(
2
,
"myvar"
,
1.1
)
p
.
set_modelling_rule
(
False
)
m
=
base_otype
.
get_child
([
'2:ObjectWithMethodsType'
,
'2:ServerMethodOptional'
]
)
self
.
assertEqual
(
m
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
refs
=
obj
.
get_referenced_nodes
(
refs
=
ua
.
ObjectIds
.
HasModellingRule
)
self
.
assertEqual
(
len
(
refs
),
0
)
def
test_add_nodes_modelling_rules_type_none
(
self
):
base_otype
=
self
.
opc
.
get_node
(
ua
.
ObjectIds
.
BaseObjectType
)
custom_otype
=
base_otype
.
add_object_type
(
2
,
'MyFooObjectType'
)
result
=
[]
_test_modelling_rules
(
self
,
custom_otype
,
None
,
result
)
m
=
base_otype
.
get_child
([
'2:ObjectWithMethodsType'
,
'2:ServerMethodNone'
])
self
.
assertEqual
(
m
.
get_referenced_nodes
(
ua
.
ObjectIds
.
HasModellingRule
),
result
)
refs
=
v
.
get_referenced_nodes
(
refs
=
ua
.
ObjectIds
.
HasModellingRule
)
self
.
assertEqual
(
refs
[
0
],
self
.
opc
.
get_node
(
ua
.
ObjectIds
.
ModellingRule_Mandatory
))
def
test_add_nodes_modelling_rules_folder_true
(
self
):
objects
=
self
.
opc
.
get_objects_node
()
folder
=
objects
.
add_folder
(
3
,
'MyFolder'
)
_test_modelling_rules
(
self
,
folder
,
True
,
[])
def
test_add_nodes_modelling_rules_folder_false
(
self
):
objects
=
self
.
opc
.
get_objects_node
()
folder
=
objects
.
add_folder
(
3
,
'MyFolder'
)
_test_modelling_rules
(
self
,
folder
,
False
,
[])
refs
=
p
.
get_referenced_nodes
(
refs
=
ua
.
ObjectIds
.
HasModellingRule
)
self
.
assertEqual
(
refs
[
0
],
self
.
opc
.
get_node
(
ua
.
ObjectIds
.
ModellingRule_Optional
))
def
test_add_nodes_modelling_rules_folder_none
(
self
):
objects
=
self
.
opc
.
get_objects_node
()
folder
=
objects
.
add_folder
(
3
,
'MyFolder'
)
_test_modelling_rules
(
self
,
folder
,
None
,
[])
p
.
set_modelling_rule
(
None
)
refs
=
p
.
get_referenced_nodes
(
refs
=
ua
.
ObjectIds
.
HasModellingRule
)
self
.
assertEqual
(
len
(
refs
),
0
)
def
test_incl_subtypes
(
self
):
base_type
=
self
.
opc
.
get_root_node
().
get_child
([
"0:Types"
,
"0:ObjectTypes"
,
"0:BaseObjectType"
])
...
...
@@ -823,18 +755,24 @@ class CommonTests(object):
# Create device type
dev_t
=
self
.
opc
.
nodes
.
base_object_type
.
add_object_type
(
0
,
"MyDevice"
)
v_t
=
dev_t
.
add_variable
(
0
,
"sensor"
,
1.0
)
v_t
.
set_modelling_rule
(
True
)
p_t
=
dev_t
.
add_property
(
0
,
"sensor_id"
,
"0340"
)
p_t
.
set_modelling_rule
(
True
)
ctrl_t
=
dev_t
.
add_object
(
0
,
"controller"
)
ctrl_t
.
set_modelling_rule
(
True
)
v_opt_t
=
dev_t
.
add_variable
(
0
,
"vendor"
,
1.0
)
v_opt_t
.
set_modelling_rule
(
False
)
v_none_t
=
dev_t
.
add_variable
(
0
,
"model"
,
1.0
)
v_none_t
.
set_modelling_rule
(
None
)
prop_t
=
ctrl_t
.
add_property
(
0
,
"state"
,
"Running"
)
prop_t
.
set_modelling_rule
(
True
)
# Create device sutype
devd_t
=
dev_t
.
add_object_type
(
0
,
"MyDeviceDervived"
)
v_t
=
devd_t
.
add_variable
(
0
,
"childparam"
,
1.0
)
v_t
.
set_modelling_rule
(
True
)
p_t
=
devd_t
.
add_property
(
0
,
"sensorx_id"
,
"0340"
)
p_t
.
set_modelling_rule
(
True
)
# instanciate device
nodes
=
instantiate
(
self
.
opc
.
nodes
.
objects
,
dev_t
,
bname
=
"2:Device0001"
)
...
...
@@ -865,9 +803,13 @@ class CommonTests(object):
# Create device type
dev_t
=
self
.
opc
.
nodes
.
base_object_type
.
add_object_type
(
0
,
"MyDevice2"
)
v_t
=
dev_t
.
add_variable
(
0
,
"sensor"
,
1.0
)
v_t
.
set_modelling_rule
(
True
)
p_t
=
dev_t
.
add_property
(
0
,
"sensor_id"
,
"0340"
)
p_t
.
set_modelling_rule
(
True
)
ctrl_t
=
dev_t
.
add_object
(
0
,
"controller"
)
ctrl_t
.
set_modelling_rule
(
True
)
prop_t
=
ctrl_t
.
add_property
(
0
,
"state"
,
"Running"
)
prop_t
.
set_modelling_rule
(
True
)
# instanciate device
nodes
=
instantiate
(
self
.
opc
.
nodes
.
objects
,
dev_t
,
nodeid
=
ua
.
NodeId
(
"InstDevice"
,
2
,
ua
.
NodeIdType
.
String
),
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment