A & C Non-Exclusive RateofChange

Supports Non-Exclusive RateofChange Alarm type. Repeat all tests in NonExclusiveLimit, except the step to trigger the node will be based on the RateOfChange (the ""slope"" value).


Questions? Contact us
Generated: 21/11/2021 at 17:21:20 p.m.
A & C Non-Exclusive RateofChange - 7 Test Cases
Test Case Id Test Type Keywords Test Case Description Test Requirements Expected Result

000

CTT Unavailable  Call()  Walk through the address space checking the type definition of NonExclusiveRateOfChange alarm type.
Step #
Action
Expected Result(s)

1

The type definition matches the UA Specifications (Part 9, Tables 49, 43, 40, 30, 23, and 7)

2

Walk through the address space looking for Instances of NonExclusiveRateOfChangeAlarmType types and verify they comply to the type definition. CTT Settings to specify where these instances are.

Instances are typed correctly.

001

CTT Unavailable  Call()  Invoke an event of each instance of NonExclusiveRateOfChangeType alarm by setting the level value beyond predefined limits.
Step #
Action
Expected Result(s)

1

Browse the address space to find the definition of each instance and how many states are supported. One is state required; Four is the max.

Each event type is received as expected. It is possible that the alarm may show as being in High and HighHigh states at the same time.

2

Acknowledge the event.

Event acknowledged successfully.

3

Confirm the event by calling the method on the Type. If supported; otherwise skip.

Event confirmed.

4

Clear the event state.

Cleared - no alarm active.

5

Repeat all previous steps but for the next state (loop through all possible states).

002

CTT Unavailable  Call()  Invoke an event of each instance of NonExclusiveRateOfChangeType alarm by setting the level value beyond predefined limits
Step #
Action
Expected Result(s)

1

Each event type is received as expected. It is possible that the alarm may show as being in High and HighHigh states at the same time.

2

Acknowledge the event.

Event acknowledged successfully.

3

Clear the event state (no alarm).

4

Confirm the event. If supported; otherwise skip.

Event confirmed.

5

Repeat all previous steps but for the next state (loop through all possible states).

003

CTT Unavailable  Call()  Invoke an event of each instance of NonExclusiveRateOfChangeType alarm by setting the level value beyond predefined limits. Browse the address space to find the definition of each instance and how many states are supported. One is state required; Four is the max.
Step #
Action
Expected Result(s)

1

Each event type is received as expected. It is possible that the alarm may show as being in High and HighHigh states at the same time.

2

Clear the event state.

(See note at the top in CU description)

3

Acknowledge the event.

Event acknowledged successfully.

4

Confirm the event by calling the method on the Type. If supported; otherwise skip.

Event confirmed.

5

Repeat all previous steps but for the next state (loop through all possible states).

004

CTT Unavailable  Call()  Invoke an event of each instance of NonExclusiveRateOfChangeType alarm by setting the level value beyond predefined limits. Browse the address space to find the definition of each instance and how many states are supported. One is state required; Four is the max.
Step #
Action
Expected Result(s)

1

Each event type is received as expected. It is possible that the alarm may show as being in High and HighHigh states at the same time.

2

Confirm the event by calling the method on the Type (event not acknowledged)

Error XXXXX received.

005

CTT Unavailable  Call()  Invoke an event of each instance of NonExclusiveRateOfChangeType alarm by setting the level value beyond predefined limits. Browse the address space to find the definition of each instance and how many states are supported. For this test, two states are required; Four is the max.
Step #
Action
Expected Result(s)

1

The current state shows the old+new state, e.g. high and high-high etc.

2

In a loop, cause the transition to the next state without confirming/acknowleding the last state.

A state-change event notification is received. The LimitState represents the currently active state(s).

3

Acknowledge and Confirm the event. Skip Confirm, if not supported.

4

Invoke a ConditionRefresh to check the status of the event.

The event is received and shows as being acknowledged/confirmed.

006

CTT Unavailable  Call()  Prepare a list of ALL fields (including inherited) that can be filtered (in a SELECT clause). In a loop, add the ""new"" fields (HighHighLimit, HighLimit, LowLimit, LowLowLimit) to a SELECT clause in a MonitoredItem.Filter.
Note: A single WHERE clause to receive this type of Alarm only.
The fields list array (to be tested) should start with the EventId. Note: the loop should jump 3 or 4 at a time (not 1 at a time).
Step #
Action
Expected Result(s)

1

Server accepts the subscription/monitoring request.

2

Invoke the event by writing to the trigger node and then call Publish.

The event is received in the Publish response and contains the list of fields requested only.

3

Repeat the loop by adding the "next" field until the last iteration where all fields are selected.