node-opcua-address-space-for-conformance-testing 2.180.0 → 2.181.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/address_space_for_conformance_testing.d.ts +12 -2
  2. package/dist/address_space_for_conformance_testing.js +32 -27
  3. package/dist/address_space_for_conformance_testing.js.map +1 -1
  4. package/dist/conformance_testing/alarm_input_nodes.d.ts +2 -0
  5. package/dist/conformance_testing/alarm_input_nodes.js +102 -0
  6. package/dist/conformance_testing/alarm_input_nodes.js.map +1 -0
  7. package/dist/conformance_testing/ctt_folder.d.ts +2 -0
  8. package/dist/conformance_testing/ctt_folder.js +375 -0
  9. package/dist/conformance_testing/ctt_folder.js.map +1 -0
  10. package/dist/conformance_testing/ctt_tree.d.ts +35 -0
  11. package/dist/conformance_testing/ctt_tree.js +85 -0
  12. package/dist/conformance_testing/ctt_tree.js.map +1 -0
  13. package/dist/conformance_testing/custom_extension_object.d.ts +63 -0
  14. package/dist/conformance_testing/custom_extension_object.js +48 -0
  15. package/dist/conformance_testing/custom_extension_object.js.map +1 -0
  16. package/dist/conformance_testing/discrete_variables.js +6 -4
  17. package/dist/conformance_testing/discrete_variables.js.map +1 -1
  18. package/dist/conformance_testing/helpers.d.ts +2 -1
  19. package/dist/conformance_testing/helpers.js +23 -5
  20. package/dist/conformance_testing/helpers.js.map +1 -1
  21. package/dist/conformance_testing/mass_variables.d.ts +2 -1
  22. package/dist/conformance_testing/mass_variables.js +7 -6
  23. package/dist/conformance_testing/mass_variables.js.map +1 -1
  24. package/dist/conformance_testing/path_and_large_arrays.d.ts +2 -1
  25. package/dist/conformance_testing/path_and_large_arrays.js +6 -5
  26. package/dist/conformance_testing/path_and_large_arrays.js.map +1 -1
  27. package/dist/conformance_testing/simulation_variables.d.ts +2 -1
  28. package/dist/conformance_testing/simulation_variables.js +9 -9
  29. package/dist/conformance_testing/simulation_variables.js.map +1 -1
  30. package/dist/conformance_testing/static_variables.d.ts +2 -1
  31. package/dist/conformance_testing/static_variables.js +19 -12
  32. package/dist/conformance_testing/static_variables.js.map +1 -1
  33. package/dist/conformance_testing/type_defaults.d.ts +15 -1
  34. package/dist/conformance_testing/type_defaults.js +30 -1
  35. package/dist/conformance_testing/type_defaults.js.map +1 -1
  36. package/dist/index.d.ts +1 -1
  37. package/dist/index.js +1 -1
  38. package/dist/index.js.map +1 -1
  39. package/package.json +19 -14
  40. package/src/address_space_for_conformance_testing.ts +37 -18
  41. package/src/conformance_testing/alarm_input_nodes.ts +151 -0
  42. package/src/conformance_testing/ctt_folder.ts +440 -0
  43. package/src/conformance_testing/ctt_tree.ts +105 -0
  44. package/src/conformance_testing/custom_extension_object.ts +105 -0
  45. package/src/conformance_testing/discrete_variables.ts +6 -4
  46. package/src/conformance_testing/helpers.ts +26 -6
  47. package/src/conformance_testing/mass_variables.ts +5 -4
  48. package/src/conformance_testing/path_and_large_arrays.ts +5 -4
  49. package/src/conformance_testing/simulation_variables.ts +6 -6
  50. package/src/conformance_testing/static_variables.ts +31 -9
  51. package/src/conformance_testing/type_defaults.ts +31 -2
  52. package/src/index.ts +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ctt_folder.js","sourceRoot":"","sources":["../../src/conformance_testing/ctt_folder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * The node tree below `Objects/CTT`, shared by the builders that populate it.
3
+ *
4
+ * A CTT project generator fills a NodeId setting by browsing: the browse path
5
+ * below `Objects/CTT` mirrors the setting path, with only the
6
+ * "Server Test/NodeIds/" prefix stripped. So
7
+ * Server Test/NodeIds/Static/HA Profile/Arrays/Int162D
8
+ * is served by
9
+ * Objects/CTT/Static/HA Profile/Arrays/Int162D
10
+ * while a setting outside that prefix keeps its whole path, e.g.
11
+ * Server Test/Alarms and Conditions/Supported Condition Types/LimitAlarmType Input Nodes
12
+ * is served by
13
+ * Objects/CTT/Server Test/Alarms and Conditions/Supported Condition Types/LimitAlarmType Input Nodes
14
+ */
15
+ import type { AddressSpace, Namespace, UAObject, UAVariable } from "node-opcua-address-space";
16
+ import { Variant } from "node-opcua-variant";
17
+ export declare const readWrite: import("node-opcua-data-model").AccessLevelFlag;
18
+ /** setting leaf -> OPC UA DataType name */
19
+ export declare const TYPE_ALIAS: Record<string, string>;
20
+ export declare function variantFor(dataTypeName: string, valueRank: number): {
21
+ variant: Variant;
22
+ arrayDimensions: number[] | null;
23
+ };
24
+ export declare class CttFolder {
25
+ readonly namespace: Namespace;
26
+ private readonly folders;
27
+ constructor(namespace: Namespace, root: UAObject);
28
+ get addressSpace(): AddressSpace;
29
+ /** the folder for a setting group, created on demand, e.g. "Static/HA Profile/Arrays" */
30
+ folder(relPath: string): UAObject;
31
+ nodeId(relPath: string): string;
32
+ /** a plain read/write variable at the given setting path */
33
+ variable(relPath: string, dataType: string, valueRank: number, value: Variant, arrayDimensions: number[] | null): UAVariable;
34
+ typedVariable(relPath: string, dataTypeName: string, valueRank: number): UAVariable;
35
+ }
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CttFolder = exports.TYPE_ALIAS = exports.readWrite = void 0;
4
+ exports.variantFor = variantFor;
5
+ const node_opcua_data_model_1 = require("node-opcua-data-model");
6
+ const node_opcua_variant_1 = require("node-opcua-variant");
7
+ const type_defaults_js_1 = require("./type_defaults.js");
8
+ exports.readWrite = (0, node_opcua_data_model_1.makeAccessLevelFlag)("CurrentRead | CurrentWrite");
9
+ /** setting leaf -> OPC UA DataType name */
10
+ exports.TYPE_ALIAS = { Bool: "Boolean" };
11
+ function defaultValueOf(dataTypeName) {
12
+ const e = type_defaults_js_1.typeAndDefaultValue.find((t) => t.type === dataTypeName);
13
+ if (!e)
14
+ throw new Error(`no default value for ${dataTypeName}`);
15
+ return typeof e.defaultValue === "function" ? e.defaultValue() : e.defaultValue;
16
+ }
17
+ function variantFor(dataTypeName, valueRank) {
18
+ const dataType = node_opcua_variant_1.DataType[dataTypeName];
19
+ const defaultValue = defaultValueOf(dataTypeName);
20
+ if (valueRank === -1) {
21
+ return {
22
+ variant: new node_opcua_variant_1.Variant({ dataType, arrayType: node_opcua_variant_1.VariantArrayType.Scalar, value: defaultValue }),
23
+ arrayDimensions: null
24
+ };
25
+ }
26
+ const dimensions = valueRank === 1 ? [5] : [2, 3];
27
+ const length = dimensions.reduce((a, b) => a * b, 1);
28
+ return {
29
+ variant: new node_opcua_variant_1.Variant({
30
+ dataType,
31
+ arrayType: valueRank === 1 ? node_opcua_variant_1.VariantArrayType.Array : node_opcua_variant_1.VariantArrayType.Matrix,
32
+ dimensions: valueRank === 1 ? null : dimensions,
33
+ value: (0, node_opcua_variant_1.buildVariantArray)(dataType, length, defaultValue)
34
+ }),
35
+ arrayDimensions: dimensions
36
+ };
37
+ }
38
+ class CttFolder {
39
+ namespace;
40
+ folders = new Map();
41
+ constructor(namespace, root) {
42
+ this.namespace = namespace;
43
+ this.folders.set("", root);
44
+ }
45
+ get addressSpace() {
46
+ return this.namespace.addressSpace;
47
+ }
48
+ /** the folder for a setting group, created on demand, e.g. "Static/HA Profile/Arrays" */
49
+ folder(relPath) {
50
+ const existing = this.folders.get(relPath);
51
+ if (existing)
52
+ return existing;
53
+ const i = relPath.lastIndexOf("/");
54
+ const parent = this.folder(i < 0 ? "" : relPath.slice(0, i));
55
+ const browseName = i < 0 ? relPath : relPath.slice(i + 1);
56
+ const f = this.namespace.addFolder(parent, { browseName, nodeId: `s=CTT/${relPath}` });
57
+ this.folders.set(relPath, f);
58
+ return f;
59
+ }
60
+ nodeId(relPath) {
61
+ return `s=CTT/${relPath}`;
62
+ }
63
+ /** a plain read/write variable at the given setting path */
64
+ variable(relPath, dataType, valueRank, value, arrayDimensions) {
65
+ const i = relPath.lastIndexOf("/");
66
+ return this.namespace.addVariable({
67
+ componentOf: this.folder(relPath.slice(0, i)),
68
+ browseName: relPath.slice(i + 1),
69
+ nodeId: this.nodeId(relPath),
70
+ description: `CTT setting ${relPath}`,
71
+ dataType,
72
+ valueRank,
73
+ arrayDimensions,
74
+ accessLevel: exports.readWrite,
75
+ userAccessLevel: exports.readWrite,
76
+ value
77
+ });
78
+ }
79
+ typedVariable(relPath, dataTypeName, valueRank) {
80
+ const { variant, arrayDimensions } = variantFor(dataTypeName, valueRank);
81
+ return this.variable(relPath, dataTypeName, valueRank, variant, arrayDimensions);
82
+ }
83
+ }
84
+ exports.CttFolder = CttFolder;
85
+ //# sourceMappingURL=ctt_tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ctt_tree.js","sourceRoot":"","sources":["../../src/conformance_testing/ctt_tree.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * The concrete ExtensionObject the Static, Dynamic and Mass folders hold.
3
+ *
4
+ * This package cannot choose one on its own. Namespace zero has no concrete
5
+ * structure worth exercising here - `Structure` (i=22) is abstract and the
6
+ * rest are service types - and a usable one lives in a companion nodeset that
7
+ * only the caller knows it has loaded. So the caller passes the behaviour in:
8
+ * which DataType to build, and how to move its fields for the Dynamic folder.
9
+ *
10
+ * Without these options every ExtensionObject variable keeps a null
11
+ * ExtensionObject, which is what the package did before and what its own tests
12
+ * (namespace zero only) still exercise.
13
+ *
14
+ * A CTT server that has loaded the AutoID nodeset, for instance:
15
+ *
16
+ * build_address_space_for_conformance_testing(addressSpace, {
17
+ * extensionObject: {
18
+ * dataType: "RfidSighting",
19
+ * randomFields: () => ({
20
+ * antenna: 1 + Math.floor(Math.random() * 4),
21
+ * strength: -80 + Math.floor(Math.random() * 60),
22
+ * currentPowerLevel: 10 + Math.floor(Math.random() * 20),
23
+ * timestamp: new Date()
24
+ * })
25
+ * }
26
+ * });
27
+ */
28
+ import type { AddressSpace } from "node-opcua-address-space";
29
+ import type { NodeIdLike } from "node-opcua-nodeid";
30
+ export interface CustomExtensionObjectOptions {
31
+ /**
32
+ * DataType of the structure to build: a browse name ("RfidSighting") or a
33
+ * NodeId, in a namespace the caller has already loaded. A DataType this
34
+ * address space cannot find is an error - a silent fallback to null would
35
+ * look like the option had been ignored.
36
+ */
37
+ dataType: NodeIdLike;
38
+ /** field values of the static instances; the DataType's own defaults when omitted */
39
+ initialFields?: Record<string, unknown>;
40
+ /** field values for the Dynamic folder, called on every simulation tick */
41
+ randomFields?: () => Record<string, unknown>;
42
+ }
43
+ export interface CustomExtensionObject {
44
+ /** browse name of the structure, for descriptions */
45
+ readonly typeName: string;
46
+ /** a fresh instance carrying the initial field values */
47
+ initialValue(): unknown;
48
+ /** a fresh instance carrying new field values, or the initial one when no randomFields was given */
49
+ random(): unknown;
50
+ }
51
+ /** one row of the typeAndDefaultValue table, as the builders see it */
52
+ interface TypeEntry {
53
+ type: string;
54
+ realType?: string;
55
+ defaultValue: unknown;
56
+ }
57
+ /**
58
+ * The initial value of a typeAndDefaultValue row, with the caller's structure
59
+ * standing in for the ExtensionObject row when one was supplied.
60
+ */
61
+ export declare function initialValueFor(entry: TypeEntry, custom?: CustomExtensionObject): unknown;
62
+ export declare function resolveCustomExtensionObject(addressSpace: AddressSpace, options?: CustomExtensionObjectOptions): CustomExtensionObject | undefined;
63
+ export {};
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initialValueFor = initialValueFor;
4
+ exports.resolveCustomExtensionObject = resolveCustomExtensionObject;
5
+ /**
6
+ * `findDataType("RfidSighting")` searches namespace zero only, and a companion
7
+ * structure is never there. A bare browse name is therefore looked up in every
8
+ * loaded namespace, so the caller does not have to know the index the nodeset
9
+ * happened to land on. A NodeId, or a "1:RfidSighting" qualified name, still
10
+ * resolves directly.
11
+ */
12
+ function findDataTypeAnywhere(addressSpace, dataType) {
13
+ const direct = addressSpace.findDataType(dataType);
14
+ if (direct)
15
+ return direct;
16
+ if (typeof dataType !== "string" || dataType.includes("=") || dataType.includes(":"))
17
+ return null;
18
+ for (let index = 1; index < addressSpace.getNamespaceArray().length; index++) {
19
+ const found = addressSpace.findDataType(dataType, index);
20
+ if (found)
21
+ return found;
22
+ }
23
+ return null;
24
+ }
25
+ /**
26
+ * The initial value of a typeAndDefaultValue row, with the caller's structure
27
+ * standing in for the ExtensionObject row when one was supplied.
28
+ */
29
+ function initialValueFor(entry, custom) {
30
+ if (custom && (entry.realType ?? entry.type) === "ExtensionObject")
31
+ return custom.initialValue();
32
+ return typeof entry.defaultValue === "function" ? entry.defaultValue() : entry.defaultValue;
33
+ }
34
+ function resolveCustomExtensionObject(addressSpace, options) {
35
+ if (!options)
36
+ return undefined;
37
+ const dataType = findDataTypeAnywhere(addressSpace, options.dataType);
38
+ if (!dataType) {
39
+ throw new Error(`extensionObject.dataType ${options.dataType} is not in the address space: load the nodeset that defines it first`);
40
+ }
41
+ const build = (fields) => addressSpace.constructExtensionObject(dataType, fields ?? {});
42
+ return {
43
+ typeName: dataType.browseName.name ?? String(options.dataType),
44
+ initialValue: () => build(options.initialFields),
45
+ random: () => build(options.randomFields ? options.randomFields() : options.initialFields)
46
+ };
47
+ }
48
+ //# sourceMappingURL=custom_extension_object.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom_extension_object.js","sourceRoot":"","sources":["../../src/conformance_testing/custom_extension_object.ts"],"names":[],"mappings":";;AAkFA,0CAGC;AAED,oEAiBC;AAnDD;;;;;;GAMG;AACH,SAAS,oBAAoB,CAAC,YAA0B,EAAE,QAAoB;IAC1E,MAAM,MAAM,GAAG,YAAY,CAAC,YAAY,CAAC,QAAkB,CAAC,CAAC;IAC7D,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAClG,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,iBAAiB,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAC3E,MAAM,KAAK,GAAG,YAAY,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;IAC5B,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AASD;;;GAGG;AACH,SAAgB,eAAe,CAAC,KAAgB,EAAE,MAA8B;IAC5E,IAAI,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,iBAAiB;QAAE,OAAO,MAAM,CAAC,YAAY,EAAE,CAAC;IACjG,OAAO,OAAO,KAAK,CAAC,YAAY,KAAK,UAAU,CAAC,CAAC,CAAE,KAAK,CAAC,YAA8B,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;AACnH,CAAC;AAED,SAAgB,4BAA4B,CACxC,YAA0B,EAC1B,OAAsC;IAEtC,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACX,4BAA4B,OAAO,CAAC,QAAQ,sEAAsE,CACrH,CAAC;IACN,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,MAAgC,EAAE,EAAE,CAAC,YAAY,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;IAClH,OAAO;QACH,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC9D,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC;QAChD,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;KAC7F,CAAC;AACN,CAAC"}
@@ -23,35 +23,37 @@ function getDADiscreteTypeFolder(namespace, parentFolder) {
23
23
  function addTwoStateDiscreteVariables(namespace, parentFolder) {
24
24
  const DADiscreteTypeFolder = getDADiscreteTypeFolder(namespace, parentFolder);
25
25
  const twoStateDiscrete001 = namespace.addTwoStateDiscrete({
26
- organizedBy: DADiscreteTypeFolder,
26
+ componentOf: DADiscreteTypeFolder,
27
27
  nodeId: "s=TwoStateDiscrete001",
28
28
  browseName: "TwoStateDiscrete001",
29
29
  trueState: "Enabled",
30
30
  falseState: "Disabled"
31
31
  });
32
32
  const twoStateDiscrete002 = namespace.addTwoStateDiscrete({
33
- organizedBy: DADiscreteTypeFolder,
33
+ componentOf: DADiscreteTypeFolder,
34
34
  nodeId: "s=TwoStateDiscrete002",
35
35
  browseName: "TwoStateDiscrete002",
36
36
  trueState: "On",
37
37
  falseState: "Off",
38
38
  optionals: ["TransitionTime", "EffectiveDisplayName"]
39
39
  });
40
+ // HasTrueSubState is not hierarchical: the HasComponent reference keeps it browsable
40
41
  const twoStateDiscrete003 = namespace.addTwoStateDiscrete({
42
+ componentOf: DADiscreteTypeFolder,
41
43
  browseName: "twoStateDiscrete003",
42
44
  nodeId: "s=TwoStateDiscrete003",
43
45
  optionals: ["TransitionTime"],
44
46
  isTrueSubStateOf: twoStateDiscrete002
45
47
  });
46
48
  const twoStateDiscrete004 = namespace.addTwoStateDiscrete({
47
- organizedBy: DADiscreteTypeFolder,
49
+ componentOf: DADiscreteTypeFolder,
48
50
  nodeId: "s=TwoStateDiscrete004",
49
51
  browseName: "TwoStateDiscrete004",
50
52
  trueState: "InProgress",
51
53
  falseState: "Stopped"
52
54
  });
53
55
  const twoStateDiscrete005 = namespace.addTwoStateDiscrete({
54
- organizedBy: DADiscreteTypeFolder,
56
+ componentOf: DADiscreteTypeFolder,
55
57
  nodeId: "s=TwoStateDiscrete005",
56
58
  browseName: "TwoStateDiscrete005",
57
59
  trueState: "InProgress",
@@ -1 +1 @@
1
- {"version":3,"file":"discrete_variables.js","sourceRoot":"","sources":["../../src/conformance_testing/discrete_variables.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAqBH,oEAgDC;AAED,sEAaC;AAED,kFA2CC;AA5HD,SAAS,uBAAuB,CAAC,SAAoB,EAAE,YAAsB;IACzE,MAAM,IAAI,GAAG,4BAA4B,CAAC;IAC1C,MAAM,MAAM,GAAG,8BAA8B,CAAC;IAE9C,IAAI,IAAI,GAAG,YAAY,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACrD,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC;YACvB,WAAW,EAAE,YAAY;YACzB,cAAc,EAAE,YAAY;YAC5B,UAAU,EAAE,IAAI;YAChB,MAAM;SACT,CAAC,CAAC;IACP,CAAC;IACD,OAAO,IAAgB,CAAC;AAC5B,CAAC;AAED,SAAgB,4BAA4B,CAAC,SAAoB,EAAE,YAAsB;IACrF,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAE9E,MAAM,mBAAmB,GAAG,SAAS,CAAC,mBAAmB,CAAC;QACtD,WAAW,EAAE,oBAAoB;QACjC,MAAM,EAAE,uBAAuB;QAC/B,UAAU,EAAE,qBAAqB;QACjC,SAAS,EAAE,SAAS;QACpB,UAAU,EAAE,UAAU;KACzB,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAG,SAAS,CAAC,mBAAmB,CAAC;QACtD,WAAW,EAAE,oBAAoB;QACjC,MAAM,EAAE,uBAAuB;QAC/B,UAAU,EAAE,qBAAqB;QACjC,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;KACxD,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAG,SAAS,CAAC,mBAAmB,CAAC;QACtD,UAAU,EAAE,qBAAqB;QACjC,MAAM,EAAE,uBAAuB;QAC/B,SAAS,EAAE,CAAC,gBAAgB,CAAC;QAC7B,gBAAgB,EAAE,mBAAmB;KACxC,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAG,SAAS,CAAC,mBAAmB,CAAC;QACtD,WAAW,EAAE,oBAAoB;QACjC,MAAM,EAAE,uBAAuB;QAC/B,UAAU,EAAE,qBAAqB;QACjC,SAAS,EAAE,YAAY;QACvB,UAAU,EAAE,SAAS;KACxB,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAG,SAAS,CAAC,mBAAmB,CAAC;QACtD,WAAW,EAAE,oBAAoB;QACjC,MAAM,EAAE,uBAAuB;QAC/B,UAAU,EAAE,qBAAqB;QACjC,SAAS,EAAE,YAAY;QACvB,UAAU,EAAE,SAAS;KACxB,CAAC,CAAC;IAEH,mBAAmB,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9E,mBAAmB,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9E,mBAAmB,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9E,mBAAmB,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9E,mBAAmB,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;AAClF,CAAC;AAED,SAAgB,6BAA6B,CAAC,SAAoB,EAAE,YAAsB;IACtF,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAE9E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QAClE,SAAS,CAAC,qBAAqB,CAAC;YAC5B,WAAW,EAAE,oBAAoB;YACjC,MAAM,EAAE,KAAK,IAAI,EAAE;YACnB,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC;YACvC,KAAK,EAAE,CAAC,CAAC,SAAS;SACrB,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED,SAAgB,mCAAmC,CAAC,aAAwB,EAAE,YAAsB;IAChG,MAAM,iCAAiC,GAAG,aAAa,CAAC,SAAS,CAAC;QAC9D,WAAW,EAAE,YAAY;QACzB,cAAc,EAAE,YAAY;QAC5B,UAAU,EAAE,2CAA2C;QACvD,MAAM,EAAE,6CAA6C;KACxD,CAAC,CAAC;IAEH,SAAS,yBAAyB,CAC9B,MAAgB,EAChB,QAAgB,EAChB,MAA+B,EAC/B,UAAkC;QAElC,MAAM,IAAI,GAAG,GAAG,QAAQ,yBAAyB,CAAC;QAClD,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE,CAAC;QAE3B,aAAa,CAAC,0BAA0B,CAAC;YACrC,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,IAAI;YAChB,MAAM;YACN,QAAQ;YACR,UAAU;YACV,KAAK,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC,CAAC;IACP,CAAC;IAED,MAAM,iBAAiB,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC5H,MAAM,eAAe,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAE7F,MAAM,IAAI,GAAG;QACT,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE;QAC5D,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE;QAC/D,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE;QAC5D,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,iBAAiB,EAAE;QAChE,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE;QAClE,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE;QACjE,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE;QAC5D,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE;KAC/D,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACnB,yBAAyB,CAAC,iCAAiC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IACnG,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"discrete_variables.js","sourceRoot":"","sources":["../../src/conformance_testing/discrete_variables.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,9 @@
3
3
  */
4
4
  import type { Namespace, UAObject, UAVariable } from "node-opcua-address-space";
5
5
  import { DataType, Variant, VariantArrayType } from "node-opcua-variant";
6
+ import type { CustomExtensionObject } from "./custom_extension_object.js";
6
7
  export declare function getValidatorFuncForType(dataType: DataType): (value: unknown) => boolean;
7
- export declare function getRandomFuncForType(dataType: DataType): () => unknown;
8
+ export declare function getRandomFuncForType(dataType: DataType, custom?: CustomExtensionObject): () => unknown;
8
9
  export declare function findDataType(dataTypeName: string): DataType;
9
10
  export declare function makeVariant(dataTypeName: string, arrayType: VariantArrayType, dimensions: number[] | null, current_value: unknown): Variant;
10
11
  export declare function addVariable(namespace: Namespace, parent: UAObject, varName: string, dataTypeName: string, current_value: unknown, valueRank: number, arrayDimensions: number[] | null, extra_name: string): UAVariable;
@@ -45,12 +45,13 @@ const node_opcua_assert_1 = require("node-opcua-assert");
45
45
  const ec = __importStar(require("node-opcua-basic-types"));
46
46
  const node_opcua_basic_types_1 = require("node-opcua-basic-types");
47
47
  const node_opcua_data_model_1 = require("node-opcua-data-model");
48
+ const node_opcua_data_value_1 = require("node-opcua-data-value");
48
49
  const node_opcua_debug_1 = require("node-opcua-debug");
49
50
  const node_opcua_factory_1 = require("node-opcua-factory");
50
51
  const node_opcua_variant_1 = require("node-opcua-variant");
51
- const debugLog = (0, node_opcua_debug_1.make_debugLog)(__filename);
52
- const doDebug = (0, node_opcua_debug_1.checkDebugFlag)(__filename);
53
- const warningLog = (0, node_opcua_debug_1.make_warningLog)(__filename);
52
+ const debugLog = (0, node_opcua_debug_1.make_debugLog)("helpers");
53
+ const doDebug = (0, node_opcua_debug_1.checkDebugFlag)("helpers");
54
+ const warningLog = (0, node_opcua_debug_1.make_warningLog)("helpers");
54
55
  // ─── Validators & Random Generators ─────────────────────────────────────
55
56
  function defaultValidator( /*value*/) {
56
57
  return true;
@@ -59,7 +60,7 @@ function getValidatorFuncForType(dataType) {
59
60
  const f = ec[`isValid${dataType}`];
60
61
  return f || defaultValidator;
61
62
  }
62
- function getRandomFuncForType(dataType) {
63
+ function getRandomFuncForType(dataType, custom) {
63
64
  const dataTypeName = node_opcua_variant_1.DataType[dataType];
64
65
  const f = ec[`random${dataTypeName}`];
65
66
  if (f) {
@@ -67,9 +68,26 @@ function getRandomFuncForType(dataType) {
67
68
  }
68
69
  switch (dataTypeName) {
69
70
  case "Variant":
71
+ // the value of a Variant-typed variable is itself a Variant
70
72
  return () => {
71
- return new node_opcua_variant_1.Variant();
73
+ return new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.Double, value: Math.random() * 100 });
72
74
  };
75
+ case "DataValue":
76
+ return () => {
77
+ return new node_opcua_data_value_1.DataValue({
78
+ value: new node_opcua_variant_1.Variant({ dataType: node_opcua_variant_1.DataType.Double, value: Math.random() * 100 }),
79
+ sourceTimestamp: new Date()
80
+ });
81
+ };
82
+ case "DiagnosticInfo":
83
+ return () => {
84
+ return new node_opcua_data_model_1.DiagnosticInfo({ additionalInfo: (0, node_opcua_basic_types_1.randomString)() });
85
+ };
86
+ case "ExtensionObject":
87
+ // the one type with no namespace-zero answer: without a concrete
88
+ // structure from the caller the only valid value is a null
89
+ // ExtensionObject, which never changes - see ./custom_extension_object.ts
90
+ return custom ? () => custom.random() : () => null;
73
91
  case "QualifiedName":
74
92
  return () => {
75
93
  return new node_opcua_data_model_1.QualifiedName({ name: (0, node_opcua_basic_types_1.randomString)() });
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/conformance_testing/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/conformance_testing/helpers.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,5 @@
2
2
  * Mass variables: 100 items per supported data-type.
3
3
  */
4
4
  import type { Namespace, UAObject } from "node-opcua-address-space";
5
- export declare function addMassVariables(namespace: Namespace, scalarFolder: UAObject): void;
5
+ import { type CustomExtensionObject } from "./custom_extension_object.js";
6
+ export declare function addMassVariables(namespace: Namespace, scalarFolder: UAObject, custom?: CustomExtensionObject): void;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.addMassVariables = addMassVariables;
4
- const helpers_1 = require("./helpers");
5
- const type_defaults_1 = require("./type_defaults");
4
+ const custom_extension_object_js_1 = require("./custom_extension_object.js");
5
+ const helpers_js_1 = require("./helpers.js");
6
+ const type_defaults_js_1 = require("./type_defaults.js");
6
7
  function addMassVariablesOfType(namespace, parent, dataTypeName, default_value, realType) {
7
8
  const nodeName = `Scalar_Mass_${dataTypeName}`;
8
9
  const scalarMass_Type = namespace.addObject({
@@ -14,18 +15,18 @@ function addMassVariablesOfType(namespace, parent, dataTypeName, default_value,
14
15
  for (let i = 0; i <= 99; i++) {
15
16
  const extra_name = `_${i.toString().padStart(2, "0")}`;
16
17
  const local_defaultValue = typeof default_value === "function" ? default_value() : default_value;
17
- (0, helpers_1.addVariable)(namespace, scalarMass_Type, dataTypeName, realType, local_defaultValue, -1, null, extra_name);
18
+ (0, helpers_js_1.addVariable)(namespace, scalarMass_Type, dataTypeName, realType, local_defaultValue, -1, null, extra_name);
18
19
  }
19
20
  }
20
- function addMassVariables(namespace, scalarFolder) {
21
+ function addMassVariables(namespace, scalarFolder, custom) {
21
22
  const scalarMass = namespace.addFolder(scalarFolder, {
22
23
  browseName: "Scalar_Mass",
23
24
  description: "This folder will contain 100 items per supported data-type.",
24
25
  nodeId: "s=Scalar_Mass"
25
26
  });
26
- for (const e of type_defaults_1.typeAndDefaultValue) {
27
+ for (const e of type_defaults_js_1.typeAndDefaultValue) {
27
28
  const realType = e.realType || e.type;
28
- addMassVariablesOfType(namespace, scalarMass, e.type, e.defaultValue, realType);
29
+ addMassVariablesOfType(namespace, scalarMass, e.type, (0, custom_extension_object_js_1.initialValueFor)(e, custom), realType);
29
30
  }
30
31
  }
31
32
  //# sourceMappingURL=mass_variables.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mass_variables.js","sourceRoot":"","sources":["../../src/conformance_testing/mass_variables.ts"],"names":[],"mappings":";;AA8BA,4CAWC;AApCD,uCAAwC;AACxC,mDAAsD;AAEtD,SAAS,sBAAsB,CAC3B,SAAoB,EACpB,MAAgB,EAChB,YAAoB,EACpB,aAAsB,EACtB,QAAgB;IAEhB,MAAM,QAAQ,GAAG,eAAe,YAAY,EAAE,CAAC;IAE/C,MAAM,eAAe,GAAG,SAAS,CAAC,SAAS,CAAC;QACxC,UAAU,EAAE,QAAQ;QACpB,WAAW,EAAE,6DAA6D;QAC1E,MAAM,EAAE,KAAK,QAAQ,EAAE;QACvB,WAAW,EAAE,MAAM;KACtB,CAAC,CAAC;IACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QACvD,MAAM,kBAAkB,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QACjG,IAAA,qBAAW,EAAC,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IAC9G,CAAC;AACL,CAAC;AAED,SAAgB,gBAAgB,CAAC,SAAoB,EAAE,YAAsB;IACzE,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,YAAY,EAAE;QACjD,UAAU,EAAE,aAAa;QACzB,WAAW,EAAE,6DAA6D;QAC1E,MAAM,EAAE,eAAe;KAC1B,CAAC,CAAC;IAEH,KAAK,MAAM,CAAC,IAAI,mCAAmB,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC;QACtC,sBAAsB,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACpF,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"mass_variables.js","sourceRoot":"","sources":["../../src/conformance_testing/mass_variables.ts"],"names":[],"mappings":";;AA+BA,4CAWC;AArCD,6EAA2F;AAC3F,6CAA2C;AAC3C,yDAAyD;AAEzD,SAAS,sBAAsB,CAC3B,SAAoB,EACpB,MAAgB,EAChB,YAAoB,EACpB,aAAsB,EACtB,QAAgB;IAEhB,MAAM,QAAQ,GAAG,eAAe,YAAY,EAAE,CAAC;IAE/C,MAAM,eAAe,GAAG,SAAS,CAAC,SAAS,CAAC;QACxC,UAAU,EAAE,QAAQ;QACpB,WAAW,EAAE,6DAA6D;QAC1E,MAAM,EAAE,KAAK,QAAQ,EAAE;QACvB,WAAW,EAAE,MAAM;KACtB,CAAC,CAAC;IACH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QACvD,MAAM,kBAAkB,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QACjG,IAAA,wBAAW,EAAC,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IAC9G,CAAC;AACL,CAAC;AAED,SAAgB,gBAAgB,CAAC,SAAoB,EAAE,YAAsB,EAAE,MAA8B;IACzG,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,YAAY,EAAE;QACjD,UAAU,EAAE,aAAa;QACzB,WAAW,EAAE,6DAA6D;QAC1E,MAAM,EAAE,eAAe;KAC1B,CAAC,CAAC;IAEH,KAAK,MAAM,CAAC,IAAI,sCAAmB,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC;QACtC,sBAAsB,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,IAAA,4CAAe,EAAC,CAAC,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;IAChG,CAAC;AACL,CAAC"}
@@ -2,5 +2,6 @@
2
2
  * 10-deep path and very large array variables for conformance testing.
3
3
  */
4
4
  import type { Namespace, UAObject } from "node-opcua-address-space";
5
+ import { type CustomExtensionObject } from "./custom_extension_object.js";
5
6
  export declare function addPath10Deep(namespace: Namespace, simulation_folder: UAObject): void;
6
- export declare function addVeryLargeArrayVariables(namespace: Namespace, objectsFolder: UAObject): void;
7
+ export declare function addVeryLargeArrayVariables(namespace: Namespace, objectsFolder: UAObject, custom?: CustomExtensionObject): void;
@@ -2,8 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.addPath10Deep = addPath10Deep;
4
4
  exports.addVeryLargeArrayVariables = addVeryLargeArrayVariables;
5
- const helpers_1 = require("./helpers");
6
- const type_defaults_1 = require("./type_defaults");
5
+ const custom_extension_object_js_1 = require("./custom_extension_object.js");
6
+ const helpers_js_1 = require("./helpers.js");
7
+ const type_defaults_js_1 = require("./type_defaults.js");
7
8
  function addPath10Deep(namespace, simulation_folder) {
8
9
  let parent = simulation_folder;
9
10
  for (let i = 1; i <= 10; i++) {
@@ -18,16 +19,16 @@ function addPath10Deep(namespace, simulation_folder) {
18
19
  parent = child;
19
20
  }
20
21
  }
21
- function addVeryLargeArrayVariables(namespace, objectsFolder) {
22
+ function addVeryLargeArrayVariables(namespace, objectsFolder, custom) {
22
23
  const scalarStaticLargeArray = namespace.addObject({
23
24
  organizedBy: objectsFolder,
24
25
  browseName: "Static_Scalar_Large_Array",
25
26
  description: "Single dimension, suggested size of 100k-elements per array.",
26
27
  nodeId: "s=Static_Scalar_Large_Array"
27
28
  });
28
- for (const e of type_defaults_1.typeAndDefaultValue) {
29
+ for (const e of type_defaults_js_1.typeAndDefaultValue) {
29
30
  const realType = e.realType || e.type;
30
- (0, helpers_1.addArrayVariable)(namespace, scalarStaticLargeArray, e.type, e.defaultValue, realType, 50 * 1024, "");
31
+ (0, helpers_js_1.addArrayVariable)(namespace, scalarStaticLargeArray, e.type, (0, custom_extension_object_js_1.initialValueFor)(e, custom), realType, 50 * 1024, "");
31
32
  }
32
33
  }
33
34
  //# sourceMappingURL=path_and_large_arrays.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"path_and_large_arrays.js","sourceRoot":"","sources":["../../src/conformance_testing/path_and_large_arrays.ts"],"names":[],"mappings":";;AAQA,sCAaC;AAED,gEAWC;AA7BD,uCAA6C;AAC7C,mDAAsD;AAEtD,SAAgB,aAAa,CAAC,SAAoB,EAAE,iBAA2B;IAC3E,IAAI,MAAM,GAAG,iBAAiB,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC;QACxC,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC;YAC9B,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,0BAA0B,CAAC,WAAW;YACnD,cAAc,EAAE,YAAY;YAC5B,MAAM,EAAE,KAAK,IAAI,EAAE;SACtB,CAAC,CAAC;QACH,MAAM,GAAG,KAAK,CAAC;IACnB,CAAC;AACL,CAAC;AAED,SAAgB,0BAA0B,CAAC,SAAoB,EAAE,aAAuB;IACpF,MAAM,sBAAsB,GAAG,SAAS,CAAC,SAAS,CAAC;QAC/C,WAAW,EAAE,aAAa;QAC1B,UAAU,EAAE,2BAA2B;QACvC,WAAW,EAAE,8DAA8D;QAC3E,MAAM,EAAE,6BAA6B;KACxC,CAAC,CAAC;IACH,KAAK,MAAM,CAAC,IAAI,mCAAmB,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC;QACtC,IAAA,0BAAgB,EAAC,SAAS,EAAE,sBAAsB,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,YAAY,EAAE,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC;IACzG,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"path_and_large_arrays.js","sourceRoot":"","sources":["../../src/conformance_testing/path_and_large_arrays.ts"],"names":[],"mappings":";;AASA,sCAaC;AAED,gEAWC;AA9BD,6EAA2F;AAC3F,6CAAgD;AAChD,yDAAyD;AAEzD,SAAgB,aAAa,CAAC,SAAoB,EAAE,iBAA2B;IAC3E,IAAI,MAAM,GAAG,iBAAiB,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC;QACxC,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC;YAC9B,WAAW,EAAE,MAAM;YACnB,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,0BAA0B,CAAC,WAAW;YACnD,cAAc,EAAE,YAAY;YAC5B,MAAM,EAAE,KAAK,IAAI,EAAE;SACtB,CAAC,CAAC;QACH,MAAM,GAAG,KAAK,CAAC;IACnB,CAAC;AACL,CAAC;AAED,SAAgB,0BAA0B,CAAC,SAAoB,EAAE,aAAuB,EAAE,MAA8B;IACpH,MAAM,sBAAsB,GAAG,SAAS,CAAC,SAAS,CAAC;QAC/C,WAAW,EAAE,aAAa;QAC1B,UAAU,EAAE,2BAA2B;QACvC,WAAW,EAAE,8DAA8D;QAC3E,MAAM,EAAE,6BAA6B;KACxC,CAAC,CAAC;IACH,KAAK,MAAM,CAAC,IAAI,sCAAmB,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC;QACtC,IAAA,6BAAgB,EAAC,SAAS,EAAE,sBAAsB,EAAE,CAAC,CAAC,IAAI,EAAE,IAAA,4CAAe,EAAC,CAAC,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC;IACrH,CAAC;AACL,CAAC"}
@@ -2,4 +2,5 @@
2
2
  * Simulation (dynamic) variables that change randomly on a timer.
3
3
  */
4
4
  import type { Namespace, UAObject } from "node-opcua-address-space";
5
- export declare function addSimulationVariables(namespace: Namespace, scalarFolder: UAObject): void;
5
+ import { type CustomExtensionObject } from "./custom_extension_object.js";
6
+ export declare function addSimulationVariables(namespace: Namespace, scalarFolder: UAObject, custom?: CustomExtensionObject): void;
@@ -4,19 +4,20 @@ exports.addSimulationVariables = addSimulationVariables;
4
4
  const node_opcua_assert_1 = require("node-opcua-assert");
5
5
  const node_opcua_basic_types_1 = require("node-opcua-basic-types");
6
6
  const node_opcua_variant_1 = require("node-opcua-variant");
7
- const helpers_1 = require("./helpers");
8
- const type_defaults_1 = require("./type_defaults");
9
- function addSimulationVariables(namespace, scalarFolder) {
7
+ const custom_extension_object_js_1 = require("./custom_extension_object.js");
8
+ const helpers_js_1 = require("./helpers.js");
9
+ const type_defaults_js_1 = require("./type_defaults.js");
10
+ function addSimulationVariables(namespace, scalarFolder, custom) {
10
11
  let values_to_change = [];
11
12
  function add_simulation_variable(parent, dataTypeName, defaultValue, realTypeName) {
12
13
  realTypeName = realTypeName || dataTypeName;
13
- const dataType = (0, helpers_1.findDataType)(realTypeName);
14
- const randomFunc = (0, helpers_1.getRandomFuncForType)(dataType);
14
+ const dataType = (0, helpers_js_1.findDataType)(realTypeName);
15
+ const randomFunc = (0, helpers_js_1.getRandomFuncForType)(dataType, custom);
15
16
  // c8 ignore next
16
17
  if (typeof randomFunc !== "function") {
17
18
  throw new Error(`a random function must exist for basicType ${dataTypeName}`);
18
19
  }
19
- const variable = (0, helpers_1.addVariable)(namespace, parent, dataTypeName, realTypeName, defaultValue, -1, null, "");
20
+ const variable = (0, helpers_js_1.addVariable)(namespace, parent, dataTypeName, realTypeName, defaultValue, -1, null, "");
20
21
  values_to_change.push({ dataType, randomFunc, variable });
21
22
  return variable;
22
23
  }
@@ -26,11 +27,10 @@ function addSimulationVariables(namespace, scalarFolder) {
26
27
  nodeId: "s=Scalar_Simulation",
27
28
  organizedBy: scalarFolder
28
29
  });
29
- for (const e of type_defaults_1.typeAndDefaultValue) {
30
+ for (const e of type_defaults_js_1.typeAndDefaultValue) {
30
31
  const dataType = e.type;
31
- const defaultValue = typeof e.defaultValue === "function" ? e.defaultValue() : e.defaultValue;
32
32
  const realType = e.realType || dataType;
33
- add_simulation_variable(simulation, dataType, defaultValue, realType);
33
+ add_simulation_variable(simulation, dataType, (0, custom_extension_object_js_1.initialValueFor)(e, custom), realType);
34
34
  }
35
35
  // Management nodes
36
36
  let interval = 2000;