From b5f1e8f1e7b5a8cd4c63021a7bc832640432883e Mon Sep 17 00:00:00 2001 From: David Monllao Date: Thu, 14 Nov 2013 11:55:03 +0800 Subject: [PATCH] MDL-42447 performance: New var to add perf. info to redirections --- admin/tool/generator/testplan.template.jmx | 2 +- lib/outputrenderers.php | 5 +++++ lib/setup.php | 16 ++++++++++++++++ lib/setuplib.php | 8 +++++++- 4 files changed, 29 insertions(+), 2 deletions(-) diff --git a/admin/tool/generator/testplan.template.jmx b/admin/tool/generator/testplan.template.jmx index 8d28bbc7a27..ccd8cfb3c0b 100644 --- a/admin/tool/generator/testplan.template.jmx +++ b/admin/tool/generator/testplan.template.jmx @@ -752,7 +752,7 @@ ${sitepath}/mod/forum/post.php POST - true + false false true false diff --git a/lib/outputrenderers.php b/lib/outputrenderers.php index e3e3a78ea64..4aed64075e7 100644 --- a/lib/outputrenderers.php +++ b/lib/outputrenderers.php @@ -890,6 +890,11 @@ class core_renderer extends renderer_base { $performanceinfo = $perf['html']; } } + + // We always want performance data when running a performance test, even if the user is redirected to another page. + if (MDL_PERF_TEST && strpos($footer, $this->unique_performance_info_token) === false) { + $footer = $this->unique_performance_info_token . $footer; + } $footer = str_replace($this->unique_performance_info_token, $performanceinfo, $footer); $footer = str_replace($this->unique_end_html_token, $this->page->requires->get_end_code(), $footer); diff --git a/lib/setup.php b/lib/setup.php index c776a891623..3151a10f233 100644 --- a/lib/setup.php +++ b/lib/setup.php @@ -190,6 +190,22 @@ if (!defined('PHPUNIT_TEST')) { define('PHPUNIT_TEST', false); } +// Performance tests needs to always display performance info, even in redirections. +if (!defined('MDL_PERF_TEST')) { + define('MDL_PERF_TEST', false); +} else { + // We force the ones we need. + if (!defined('MDL_PERF')) { + define('MDL_PERF', true); + } + if (!defined('MDL_PERFDB')) { + define('MDL_PERFDB', true); + } + if (!defined('MDL_PERFTOFOOT')) { + define('MDL_PERFTOFOOT', true); + } +} + // When set to true MUC (Moodle caching) will be disabled as much as possible. // A special cache factory will be used to handle this situation and will use special "disabled" equivalents objects. // This ensure we don't attempt to read or create the config file, don't use stores, don't provide persistence or diff --git a/lib/setuplib.php b/lib/setuplib.php index 06178412317..bb28c0bee79 100644 --- a/lib/setuplib.php +++ b/lib/setuplib.php @@ -1654,12 +1654,18 @@ width: 80%; -moz-border-radius: 20px; padding: 15px"> $htmllang = ''; } + $footer = ''; + if (MDL_PERF_TEST) { + $perfinfo = get_performance_info(); + $footer = ''; + } + return ' '.$meta.' ' . $title . ' -' . $content . ''; +' . $content . $footer . ''; } }