Interface Operation<PREFIXPARAM,​POSTFIXPARAM,​RESULT>

  • Type Parameters:
    PREFIXPARAM - the type of the prefix parameter
    POSTFIXPARAM - the type of the postfix parameter
    RESULT - the result type
    All Known Implementing Classes:
    ConvertBeanToMapOperation, DecimalFormatOperation, RandomNumberOperation

    public interface Operation<PREFIXPARAM,​POSTFIXPARAM,​RESULT>
    Implement this interface in order to create operation classes. An operation is expected to take zero, one or two parameters (which can be arrays, thus containing multiple values) and return a value (can be an array as well). Operations MUST be side-effect free, since there is no guarantee that a given operation statement leads to any specific number of calls to the underlying operation class!

    When an operation is to be executed, its class is instantiated using the default constructor, which must be present and accessible. The resulting instance is used only for a single invocation of the execute(Object, Object) method.

    The parameter types supported are similar to those supported for FixtureMethod parameters, minus enumerations. The same is true for result value types. Integrity will perform autoconversion from values given in test scripts into the types expected by a given operation class.

    Note that an operation must be fine if called with null values, even for expected parameters. This can be the case in various situations. The operation may of course return null as well in that case, if no other behavior is desired.
    Author:
    Rene Schneider - initial API and implementation
    • Method Detail

      • execute

        RESULT execute​(PREFIXPARAM aPrefixParameter,
                       POSTFIXPARAM aPostfixParameter)
        Executes the operation logic.
        Parameters:
        aPrefixParameter - the prefix parameter, or null if none was given or the value is not available at the time of the call
        aPostfixParameter - the postfix parameter, or null if none was given or the value is not available at the time of the call
        Returns:
        the result value