Prev Next

# Testpoint Constraints

A Constraint is typically composed using local and member variables in expressions, separated by operators to define one or more specific criteria that must be met. A constraint must evaluate as true to be considered as Passed. If a constraint evaluates as false, it is considered as Failed.

Any variables referenced within the constraint must be in scope at the position where the Testpoint or Breakpoint is evaluated.

## General/Arithmetic Operators

Operator

Description

+

Example: a + b > 0

-

Subtract

Example: a - b > 0

/

Divide

Example: a / b == 2

*

Multiply

Example: a * b == c

%

Modulus

Example: a % 2 == 1

()

Parentheses - Used to define precedence in complex expressions.

Example: ((a / b) * c) <= 100

[ ]

Square Brackets - Used for accessing Arrays.

Example: Names.Surname == "Smith"

.

Dot operator - Used to access member variables of a Class.

Example: Station.Name == "Flinders"

->

Alternative notation for the Dot operator.

Example: Station->Name == "Flinders"

## Comparison Operators

Operator

Description

=

Equal To

Example: a = b

==

Equal To

Example: a == b

!=

Not Equal To

Example: a != b

<>

Not Equal To

Example: a <> b

>

Greater Than

Example: a > b

>=

Greater Than or Equal To

Example: a >= b

<

Less Than

Example: a < b

<=

Less Than or Equal To

Example: a <= b

## Logical Operators

Operator

Description

AND

Logical AND

Example: (a >= 1) AND (a <= 10)

OR

Logical OR

Example: (a == 1) OR (b == 1)

## Bitwise Operators

Operator

Description

&

Bitwise AND

Example: (1 & 1) = 1

(1 & 0) = 0

|

Bitwise OR

Example: (1 | 1) = 1

(1 | 0) = 1

^

Bitwise XOR (exclusive OR)

Example: (1 ^ 1) = 0

(1 ^ 0) = 1

Example

Description

((m_nValue & 0xFFFF0000) == 0)

Use a Bitwise AND operator (&) with a hexadecimal value as the right operand to test that no bits are set in high order bytes of the variable.

((m_nValue & 0x0000FFFF) == 0)

Use a Bitwise AND operator (&) with a hexadecimal value as the right operand to test that no bits are set in low order bytes of the variable.

m_value = 2

Accessing a multi-dimensional array

a AND (b OR c)

Combining AND and OR operators, using parentheses to ensure precedence. In this example, variable 'a' must be true, and either 'b' or 'c' must be true.

## Notes

• String comparisons are case-sensitive