diff options
Diffstat (limited to 'tests/open62541-testserver/testserver.cpp')
-rw-r--r-- | tests/open62541-testserver/testserver.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/tests/open62541-testserver/testserver.cpp b/tests/open62541-testserver/testserver.cpp index d83694d..c3760c4 100644 --- a/tests/open62541-testserver/testserver.cpp +++ b/tests/open62541-testserver/testserver.cpp @@ -215,7 +215,7 @@ UA_NodeId TestServer::addVariableWithWriteMask(const UA_NodeId &folder, const QS } UA_NodeId TestServer::addVariable(const UA_NodeId &folder, const QString &variableNode, const QString &name, const QVariant &value, - QOpcUa::Types type, QVector<quint32> arrayDimensions) + QOpcUa::Types type, QVector<quint32> arrayDimensions, int valueRank) { UA_NodeId variableNodeId = Open62541Utils::nodeIdFromQString(variableNode); @@ -223,6 +223,7 @@ UA_NodeId TestServer::addVariable(const UA_NodeId &folder, const QString &variab UA_VariableAttributes attr = UA_VariableAttributes_default; attr.value = QOpen62541ValueConverter::toOpen62541Variant(value, type); + attr.valueRank = valueRank; attr.displayName = UA_LOCALIZEDTEXT_ALLOC("en-US", name.toUtf8().constData()); attr.dataType = attr.value.type ? attr.value.type->typeId : UA_TYPES[UA_TYPES_BOOLEAN].typeId; attr.accessLevel = UA_ACCESSLEVELMASK_READ | UA_ACCESSLEVELMASK_WRITE; @@ -272,9 +273,15 @@ UA_NodeId TestServer::addEmptyArrayVariable(const UA_NodeId &folder, const QStri attr.dataType = UA_TYPES[UA_TYPES_BOOLEAN].typeId; attr.accessLevel = UA_ACCESSLEVELMASK_READ; attr.valueRank = 1; + attr.arrayDimensionsSize = 1; + attr.arrayDimensions = UA_UInt32_new(); + *attr.arrayDimensions = 1; attr.value.arrayLength = 0; attr.value.type = &UA_TYPES[UA_TYPES_BOOLEAN]; attr.value.data = UA_EMPTY_ARRAY_SENTINEL; + attr.value.arrayDimensionsSize = 1; + attr.value.arrayDimensions = UA_UInt32_new(); + *attr.value.arrayDimensions = 1; UA_QualifiedName variableName; variableName.namespaceIndex = variableNodeId.namespaceIndex; |