/******************************************************************************
* Copyright (c) 2000-2019 Ericsson Telecom AB
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html
******************************************************************************/
///////////////////////////////////////////////////////////////////////////////
//
//  File:               TCCAssertion_Functions.ttcn
//  Description:        TCC Useful Functions: Assert Functions
//  Rev:                R36B
//  Prodnr:             CNL 113 472
//
///////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////
//  Module: TCCAssertion_Functions
// 
//  Purpose:
//    This module supports assertion handling
// 
//  Module Parameters:
//      - 
// 
//  Module depends on:
//    -
//
///////////////////////////////////////////////////////////////////////////////
module TCCAssertion_Functions {

///////////////////////////////////////////////////////////////////////////////
//  Function: f_assert
// 
//  Purpose:
//    Implement TTCN assertion. 
//
//  Parameters:
//    pl_assertMessage - *in* *charstring* - assertion message
//    pl_predicate - *in* *boolean* - boolean predicate
// 
//  Return Value:
//    -
//
//  Errors:
//    - 
// 
//  Detailed description:
//    At the point of this function call, the assertion predicate must be true,
//    else assertion fails that results in a dynamic test case error
//    To use assertion optimized build shall be switched on with switch -O2 and
//    NDEBUG shall not be defined
// 
///////////////////////////////////////////////////////////////////////////////
external function f_assert(charstring pl_assertMessage, boolean pl_predicate);

}
