Commit 0d35e695 authored by József Gyürüsi's avatar József Gyürüsi
Browse files

[other_task #1679246] Fix CLL Variable tests + DataSource/DsRestAPI tests fix



Change-Id: Iba75d0d7faa7963992c52c1e4d11b02f9fd0f37d
Signed-off-by: József Gyürüsi's avatarJózsef Gyürüsi <jozsef.gyurusi@ericsson.com>
parent 9bcaf0c1
......@@ -266,6 +266,9 @@ type component EPTF_Logging_CT extends EPTF_Base_CT {
private var integer v_EPTF_Logging_myMaskId; // the Id of my logging masks
//private var EPTF_CharstringList v_EPTF_Logging_errorMsgs := {}; // the list of error messages - global var used in Common instead
private var charstring v_EPTF_Logging_expectedError := ""; // the expected assert message at cleanup
private var EPTF_CharstringList v_EPTF_Logging_expectedWarnings := {} // the expected warning messagea checked at cleanup
private var EPTF_BooleanList v_EPTF_Logging_expectedWarning_logged := {}
public var EPTF_Logging_strList v_Logging_selectionList := {"EPTF_CLL", "EPTF_User"};
}
......
......@@ -63,6 +63,7 @@
// <f_EPTF_Logging_checkExpectedError>
// <f_EPTF_Logging_registerPreambleFn>
// <f_EPTF_Logging_removePreambleFn>
// <f_EPTF_Logging_setExpectedWarningMsg>
//
///////////////////////////////////////////////////////////////
......@@ -502,6 +503,10 @@ public function f_EPTF_Logging_init_CT(in charstring pl_selfName) runs on EPTF_L
f_loggingUI_refreshVar := null;
f_loggingUI_update := null;
v_EPTF_Logging_expectedWarnings := {}
v_EPTF_Logging_expectedWarning_logged := {}
f_EPTF_Logging_registerPreambleFn(refers(f_EPTF_Logging_checkExpectedWarnings_preamble_FT));
// create my log masks:
v_EPTF_Logging_myMaskId := f_EPTF_Logging_registerComponentMasks("EPTF_Logging", {"Warning", "Debug", "DebugM", "DebugV"}, EPTF_Logging_CLL);
......@@ -559,6 +564,7 @@ runs on EPTF_Logging_CT
{
return;
}
f_EPTF_Logging_checkWarnings_at_cleanup();
v_EPTF_Logging_ComponentMask_List := {};
v_EPTF_Logging_preambleFnList := {};
v_EPTF_Logging_isRegisteredPreambleFn := false;
......@@ -1206,6 +1212,53 @@ runs on EPTF_Logging_CT
}
}
private function f_EPTF_Logging_checkExpectedWarnings_preamble_FT(in charstring pl_message) runs on EPTF_Logging_CT {
if (not match(pl_message,pattern "*Warning*")) {
return;
}
var charstring vl_pattern;
for (var integer i:=0; i<sizeof(v_EPTF_Logging_expectedWarnings); i:=i+1) {
vl_pattern := v_EPTF_Logging_expectedWarnings[i];
if (match(pl_message,pattern vl_pattern)) {
v_EPTF_Logging_expectedWarning_logged[i] := true; // verdict is only pass if this warning is logged
}
}
}
private function f_EPTF_Logging_checkWarnings_at_cleanup() runs on EPTF_Logging_CT {
for (var integer i:=0; i<sizeof(v_EPTF_Logging_expectedWarnings); i:=i+1) {
if (v_EPTF_Logging_expectedWarning_logged[i] == false) {
setverdict(fail, "Expected warning was not logged: ", v_EPTF_Logging_expectedWarnings[i])
return;
}
}
setverdict(pass)
}
///////////////////////////////////////////////////////////
// Function: f_EPTF_Logging_setExpectedWarningMsg
//
// Purpose:
// Sets a warning message that is checked in cleanup if it was among the warning messages logged.
//
// Parameters:
// pl_expectedWarning - *in charstring* - the warning message pattern to expect as warning log
//
// Return Value:
// -
//
// Detailed Comments:
// The expected warning patterns are automatically checked in <f_EPTF_Logging_cleanup_CT>,
// and the verdict is set automatically to pass if all matches with any warning messages, and fail if any of them does not match.
// If this function is called more than once, several expected warning messages can be set
//
///////////////////////////////////////////////////////////
public function f_EPTF_Logging_setExpectedWarningMsg(in charstring pl_expectedWarning) runs on EPTF_Logging_CT {
v_EPTF_Logging_expectedWarnings := v_EPTF_Logging_expectedWarnings & {pl_expectedWarning};
v_EPTF_Logging_expectedWarning_logged := v_EPTF_Logging_expectedWarning_logged & {false}
}
//////////////////////////////////////////////////////////
// Function: f_EPTF_Logging_logAll
//
......
......@@ -255,7 +255,7 @@ group EPTF_DataSource_TestFunctions {
const charstring c_EPTF_CLL_DataSourceClient_Test_DSOwnerValueHandlerParam := "ValueHandlerParam";
const charstring c_EPTF_CLL_DataSourceClient_Test_DSOwnerValueHandlerParam2 := "ValueHandlerParam2";
function f_EPTF_CLL_DataSourceClient_Test_dsOwnerBehaviour(in charstring pl_selfName, in EPTF_DataSource_CT pl_sourceCompRef, in charstring pl_errMessage := "") runs on EPTF_CLL_DataSource_Client_CT {
function f_EPTF_CLL_DataSourceClient_Test_dsOwnerBehaviour(in charstring pl_selfName, in EPTF_DataSource_CT pl_sourceCompRef, in charstring pl_errMessage := "", in charstring pl_warningMessage := "") runs on EPTF_CLL_DataSource_Client_CT {
f_EPTF_DataSourceClient_init_CT(pl_selfName,pl_sourceCompRef);
var integer vl_varIdx;
f_EPTF_Var_newInt(c_EPTF_CLL_DataSourceClient_Test_DSOwnerElementName&"."&c_EPTF_CLL_DataSourceClient_Test_DSOwnerDataVarName,0,vl_varIdx);
......@@ -273,6 +273,9 @@ group EPTF_DataSource_TestFunctions {
f_EPTF_Base_setNegativeTestMode();
f_EPTF_Base_setExpectedErrorMsg(pl_errMessage);
}
if (pl_warningMessage != "") {
f_EPTF_Logging_setExpectedWarningMsg(pl_warningMessage);
}
f_EPTF_Base_wait4Shutdown();
}
......@@ -7615,7 +7618,7 @@ group setDataValueNonBlocking {
}
//this function initialize datasource and client for test setDataValue_nonBlocking
function f_EPTF_CLL_DataSource_Test_setDataValue_nonBlocking_init(in charstring pl_name, in charstring pl_errMessage := "") runs on EPTF_CLL_DataSource_Test_NonBlocking_CT {
function f_EPTF_CLL_DataSource_Test_setDataValue_nonBlocking_init(in charstring pl_name, in charstring pl_errMessage := "", in charstring pl_warningMessage := "") runs on EPTF_CLL_DataSource_Test_NonBlocking_CT {
var charstring c_test := "DataSource_setDataValueNonBlocking" & pl_name;
......@@ -7625,7 +7628,7 @@ group setDataValueNonBlocking {
// start DSClient DataOwner CT
var EPTF_DataSource_CT vl_dataSourceComp := self;
var EPTF_CLL_DataSource_Client_CT vl_client_owner := EPTF_CLL_DataSource_Client_CT.create;
vl_client_owner.start(f_EPTF_CLL_DataSourceClient_Test_dsOwnerBehaviour(c_test & "_DsOwner",vl_dataSourceComp, pl_errMessage));
vl_client_owner.start(f_EPTF_CLL_DataSourceClient_Test_dsOwnerBehaviour(c_test & "_DsOwner",vl_dataSourceComp, pl_errMessage, pl_warningMessage));
v_Test_NonBlocking_clientRef := vl_client_owner;
timer t_wait := 1.0;
......
......@@ -3631,7 +3631,7 @@ testcase tc_EPTF_CLL_DataSource_Test_setDataValue_nonblocking_setIntValToEptfVar
///////////////////////////////////////////////////////////
testcase tc_EPTF_CLL_DataSource_Test_setDataValue_nonblocking_negative_bad_int_type() runs on EPTF_CLL_DataSource_Test_NonBlocking_CT {
f_EPTF_CLL_DataSource_Test_setDataValue_nonBlocking_init("negative_bad_int_type", "Error: EPTF_Var: ERROR:Cannot convert direct content*");
f_EPTF_CLL_DataSource_Test_setDataValue_nonBlocking_init("negative_bad_int_type", pl_warningMessage := "EPTF_Var:Warning: ERROR:Cannot convert direct content*");
var EPTF_CLL_DataSource_Test_NonBlocking_Handler vl_handler := {dataValueHandler:=refers(f_EPTF_DataSourceTest_NonBlocking_setDataValue_getDataHandler)};
......@@ -3663,7 +3663,7 @@ testcase tc_EPTF_CLL_DataSource_Test_setDataValue_nonblocking_negative_bad_int_t
///////////////////////////////////////////////////////////
testcase tc_EPTF_CLL_DataSource_Test_setDataValue_nonblocking_negative_bad_intlist_type() runs on EPTF_CLL_DataSource_Test_NonBlocking_CT {
f_EPTF_CLL_DataSource_Test_setDataValue_nonBlocking_init("negative_bad_intlist_type", "Error: EPTF_Var: ERROR:Cannot convert direct content*");
f_EPTF_CLL_DataSource_Test_setDataValue_nonBlocking_init("negative_bad_intlist_type", pl_warningMessage := "EPTF_Var:Warning: ERROR:Cannot convert direct content*");
var EPTF_CLL_DataSource_Test_NonBlocking_Handler vl_handler := {dataValueHandler:=refers(f_EPTF_DataSourceTest_NonBlocking_setDataValue_getDataHandler)};
......
......@@ -1130,8 +1130,8 @@ testcase tc_EPTF_DsRestAPI_Test_DSServer_JSONviaHTTP() runs on DsRestAPI_Test_CT
f_PutEnv("PYTHONDONTWRITEBYTECODE", "True");
f_EPTF_DsRestAPI_init_CT("tc_EPTF_DsRestAPI_Test_DSServer_JSONviaHTTP");
f_EPTF_DsRestAPI_Test_DS_init_CT("tc_EPTF_DsRestAPI_Test_DSServer_JSONviaHTTP",self);
f_EPTF_DsRestAPI_init_CT("tc_EPTF_DsRestAPI_Test_DSServer_JSON"); // component name should be the same as in tc_EPTF_DsRestAPI_Test_DSServer_JSON, because response contains PTC name
f_EPTF_DsRestAPI_Test_DS_init_CT("tc_EPTF_DsRestAPI_Test_DSServer_JSON",self);
f_EPTF_DsRestAPI_start(tsp_EPTF_DsRestAPI_HTTPServer_RemoteAddress, tsp_EPTF_DsRestAPI_HTTPServer_RemotePort);
......
......@@ -4330,32 +4330,10 @@ testcase tc_EPTF_Var_SubscribeTest_pull_automaticRerouting_RouteUpdate() runs on
f_EPTF_Base_stop(pass);
}
function f_EPTF_Var_Test_adjustTest_checkExpectedWarning_preamble_FT(in charstring pl_message) runs on VariableTest_CT {
if (not match(pl_message,pattern "*Warning*")) {
return;
}
if (match(pl_message,pattern v_charstringVar)) {
v_boolVar := true; // verdict is only pass if this warning is logged
}
}
function f_EPTF_Var_Test_adjustTest_checkWarning_cleanup() runs on VariableTest_CT {
if (v_boolVar == false) {
setverdict(fail, "Expected warning was not logged: ", v_charstringVar)
} else {
setverdict(pass)
}
}
testcase tc_EPTF_Var_SubscribeTest_pull_with_adjustRemoteContent_negative() runs on VariableTest_CT{
f_EPTF_Var_init_CT("SubscribeTest_pull_with_adjustRemoteContent_negative");
f_EPTF_Var_setMaxWaitTime(0.2)
var charstring vl_expected_warning := "*Cannot convert direct content { floatVal := 1.000000 } to direct content { direct := { intVal := 0 } }. Types are incompatible*";
v_charstringVar := vl_expected_warning;
f_EPTF_Logging_registerPreambleFn(refers(f_EPTF_Var_Test_adjustTest_checkExpectedWarning_preamble_FT));
f_EPTF_Base_registerCleanup(refers(f_EPTF_Var_Test_adjustTest_checkWarning_cleanup));
v_boolVar := false;
f_EPTF_Logging_setExpectedWarningMsg("*Cannot convert direct content { floatVal := 1.000000 } to direct content { direct := { intVal := 0 } }. Types are incompatible*");
timer t_wait := 0.2;
......@@ -4388,11 +4366,7 @@ testcase tc_EPTF_Var_SubscribeTest_pull_with_adjustRemoteContent_negative() runs
testcase tc_EPTF_Var_SubscribeTest_pull_noAlt_with_adjustRemoteContent_negative() runs on VariableTest_CT{
f_EPTF_Var_init_CT("SubscribeTest_pull_noAlt_with_adjustRemoteContent_negative");
f_EPTF_Var_setMaxWaitTime(0.2)
var charstring vl_expected_warning := "*Cannot convert direct content { floatVal := 1.000000 } to direct content { direct := { intVal := 0 } }. Types are incompatible*";
v_charstringVar := vl_expected_warning;
f_EPTF_Logging_registerPreambleFn(refers(f_EPTF_Var_Test_adjustTest_checkExpectedWarning_preamble_FT));
f_EPTF_Base_registerCleanup(refers(f_EPTF_Var_Test_adjustTest_checkWarning_cleanup));
v_boolVar := false;
f_EPTF_Logging_setExpectedWarningMsg("*Cannot convert direct content { floatVal := 1.000000 } to direct content { direct := { intVal := 0 } }. Types are incompatible*");
timer t_wait := 0.2;
......@@ -4425,11 +4399,7 @@ testcase tc_EPTF_Var_SubscribeTest_pull_noAlt_with_adjustRemoteContent_negative(
testcase tc_EPTF_Var_SubscribeTest_pull_with_adjustContent_negative() runs on VariableTest_CT{
f_EPTF_Var_init_CT("SubscribeTest_pull_with_adjustContent_negative");
f_EPTF_Var_setMaxWaitTime(0.2)
var charstring vl_expected_warning := "*Cannot convert direct content { floatVal := 1.000000 } to direct content { direct := { intVal := 0 } }. Types are incompatible*";
v_charstringVar := vl_expected_warning;
f_EPTF_Logging_registerPreambleFn(refers(f_EPTF_Var_Test_adjustTest_checkExpectedWarning_preamble_FT));
f_EPTF_Base_registerCleanup(refers(f_EPTF_Var_Test_adjustTest_checkWarning_cleanup));
v_boolVar := false;
f_EPTF_Logging_setExpectedWarningMsg("*Cannot convert direct content { floatVal := 1.000000 } to direct content { direct := { intVal := 0 } }. Types are incompatible*");
timer t_wait := 0.2;
......@@ -4462,11 +4432,7 @@ testcase tc_EPTF_Var_SubscribeTest_pull_with_adjustContent_negative() runs on Va
testcase tc_EPTF_Var_SubscribeTest_pull_noAlt_with_adjustContent_negative() runs on VariableTest_CT{
f_EPTF_Var_init_CT("SubscribeTest_pull_noAlt_with_adjustContent_negative");
f_EPTF_Var_setMaxWaitTime(0.2)
var charstring vl_expected_warning := "*Cannot convert direct content { floatVal := 1.000000 } to direct content { direct := { intVal := 0 } }. Types are incompatible*";
v_charstringVar := vl_expected_warning;
f_EPTF_Logging_registerPreambleFn(refers(f_EPTF_Var_Test_adjustTest_checkExpectedWarning_preamble_FT));
f_EPTF_Base_registerCleanup(refers(f_EPTF_Var_Test_adjustTest_checkWarning_cleanup));
v_boolVar := false;
f_EPTF_Logging_setExpectedWarningMsg("*Cannot convert direct content { floatVal := 1.000000 } to direct content { direct := { intVal := 0 } }. Types are incompatible*");
timer t_wait := 0.2;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment