diff --git a/config.inc.php b/config.inc.php index 02d3bd5342..192e4bbb76 100644 --- a/config.inc.php +++ b/config.inc.php @@ -1078,6 +1078,12 @@ // 'latest' => latest execution notes. $tlCfg->exec_cfg->steps_exec_status_default = 'empty'; +/** + * Concatenate execution steps note in the execution notes (the later is attached to the test run) + **/ + +$tlCfg->exec_cfg->steps_notes_concat = false; + // Parameters to show notes/details when entering test execution feature // EXPAND: show expanded/open // COLLAPSE: show collapsed/closede diff --git a/gui/javascript/execSetResults.js b/gui/javascript/execSetResults.js index b7a4f55585..ad2dd3f2e6 100644 --- a/gui/javascript/execSetResults.js +++ b/gui/javascript/execSetResults.js @@ -22,26 +22,49 @@ function doSubmitForHTML5() { /** * Submit Executions status. - * Used - * + * @param tcvID int test case id + * @param status test status + * @param notesConcat concatenate step note in exec notes + * @param goNext open next test case + * */ -function saveExecStatus(tcvID, status, msg, goNext) { - +function saveExecStatus(tcvID, status, notesConcat, goNext) { /* Init */ jQuery('#save_and_next').val(0); - jQuery('#save_results').val(0); - jQuery('#save_partial_steps_exec').val(0); - + jQuery('#save_results').val(0); + jQuery('#save_partial_steps_exec').val(0); jQuery('#save_button_clicked').val(tcvID); jQuery('#statusSingle_' + tcvID).val(status); + if(notesConcat == true){ + // Get all steps status + var myRegexp = /step_row_(\d+)/g; + var stepresult = document.querySelectorAll('[id^=step_row_]') + var tcNotes = document.getElementById('notes['+tcvID+']'); + stepresult.forEach(function(item){ + match = myRegexp.exec(item.id); + myRegexp.lastIndex = 0; + stepNum = document.getElementById('tcstep_'+match[1]); + var row = stepNum.innerHTML; + var note = ''; + var statusTc = '' + + + if ( item.getElementsByClassName('step_status').length > 0 ) + statusTc = item.getElementsByClassName('step_status')[0].value; + if ( item.getElementsByClassName('step_note_textarea').length > 0 ) + note = item.getElementsByClassName('step_note_textarea')[0].value; + if (statusTc == 'f' ||statusTc == 'b' || note != ''){ + tcNotes.value = tcNotes.value + '\nStep '+ row + ' ('+ statusTc+'):' + note ; + } + }) + } if( goNext == undefined || goNext == 0 ) { - jQuery('#save_results').val(1); + jQuery('#save_results').val(1); } else { - if( goNext == 1 ) { - jQuery('#save_and_next').val(1); - } + if( goNext == 1 ) { + jQuery('#save_and_next').val(1); + } } - doSubmitForHTML5(); } @@ -152,4 +175,4 @@ function checkSubmitForStatusCombo(oid,statusCode2block) { saveStepsPartialExecClicked = false; $("#saveStepsPartialExec").click(function() { saveStepsPartialExecClicked = true; -}); \ No newline at end of file +}); diff --git a/gui/templates/tl-classic/execute/inc_exec_img_controls.tpl b/gui/templates/tl-classic/execute/inc_exec_img_controls.tpl index 553d62c757..aed72cfdfb 100644 --- a/gui/templates/tl-classic/execute/inc_exec_img_controls.tpl +++ b/gui/templates/tl-classic/execute/inc_exec_img_controls.tpl @@ -109,7 +109,7 @@ Author : franciscom   + onclick="javascript:saveExecStatus({$tcvID},'{$kode}',{$tlCfg->exec_cfg->steps_notes_concat});">  {/foreach}

@@ -121,7 +121,7 @@ Author : franciscom   + onclick="javascript:saveExecStatus({$tcvID},'{$kode}',{$tlCfg->exec_cfg->steps_notes_concat},1);">  {/foreach}