How to unit test a Declare Expression rule |
You can test a Declare Expression rule as a unit, before or after the rule is integrated into the rest of the application under development.
This facility is available only for Declare Expression rules for which all properties used by the computation belong to a single Applies To class, or to one class plus superclasses of that class. For example, you cannot use this facility to test a computation that involves both a Data-Account property and an Assign-Workbasket property.
For basics of unit testing, see How to unit test a rule with the Run toolbar button.
1. Save the rule form.
2. Click the Run toolbar button () or the
equivalent keyboard shortcut CTRL
+ R
to open a guided test window.
3. The window displays the dependency network for the target property. After you supply values for the independent properties, the system evaluates the Declare Expression rule evaluates and displays the results. You can enter values for other properties in the computation, or apply a model rule that supplies such values.
Use this approach if all properties in the computation are
Single Value
properties and belong to one
Applies To class.
1. Click an independent property on the dependency network, for example, Due By.
2. Enter a value for the an independent property and click Update .
3. Repeat steps 1 and 2 to test with each independent property. The system computes and displays values for the dependent properties (Deadline, in this example).
If the test requires creating an element as part of an
embedded Page List
or Page Group
property, the system displays a prompt to create a new page. To
create the additional element:
Page Group
, enter an identifier as
subscript value (For a Page List
, the system
appends the new page after existing pages.)Similarly, you can add an element to a Value
List
or Value Group
property.
As an alternative to typing property values, you can create a model rule that contains the values defining a test case.
1. The system presents a list of clipboard pages with classes that may match the Applies To key part. Select the clipboard page that contains values for the rule. If no page of the appropriate type is present, select Create or Reset this Test Page and specify a model.
2. Click Create Page and Run Rule . The system makes a temporary copy of the page you selected (or creates a new temporary page and applies the model rule), executes the Declare Expression rule, and displays the result.
3. Repeat these steps with other model rules, or alter the clipboard contents and repeat the test.
Your computation can involve special properties (standard
properties with names starting with px, or your properties
marked as special), Value List
, or Value
Group
properties.
You can't use manual input to change the value of a special property; instead, define a model rule or rules to enter tests for such cases.
If the expressions tested involve aggregate properties, use this facility only with Group or List properties with a small number of elements. To avoid runaway processing caused by recursion or a possible infinite loop, this facility uses an internal limit of 999 computations, counting both iterations over List and Group properties and expression evaluations. If during a test execution this limit is reached, processing ends with an error message.
dependency network, special property |