diff --git a/lib/classes/output/progress_trace/combined_progress_trace.php b/lib/classes/output/progress_trace/combined_progress_trace.php index 7027440a473..9344e7a5afa 100644 --- a/lib/classes/output/progress_trace/combined_progress_trace.php +++ b/lib/classes/output/progress_trace/combined_progress_trace.php @@ -25,14 +25,14 @@ use core\output\progress_trace; * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later * @package core */ -class combined_progress_trace extends \progress_trace { +class combined_progress_trace extends progress_trace { /** * Constructs a new instance. * * @param array $traces multiple traces */ public function __construct( - /** @var array The list of traces */ + /** @var progress_trace[] The list of traces */ protected array $traces, ) { } diff --git a/lib/classes/output/progress_trace/progress_trace_buffer.php b/lib/classes/output/progress_trace/progress_trace_buffer.php index dd9be00eb3a..85085b9493d 100644 --- a/lib/classes/output/progress_trace/progress_trace_buffer.php +++ b/lib/classes/output/progress_trace/progress_trace_buffer.php @@ -25,7 +25,7 @@ use core\output\progress_trace; * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later * @package core */ -class progress_trace_buffer extends \progress_trace { +class progress_trace_buffer extends progress_trace { /** @var string output buffer */ protected string $buffer = ''; diff --git a/lib/tests/output/progress_trace/html_list_progress_trace_test.php b/lib/tests/output/progress_trace/html_list_progress_trace_test.php new file mode 100644 index 00000000000..f593fe08403 --- /dev/null +++ b/lib/tests/output/progress_trace/html_list_progress_trace_test.php @@ -0,0 +1,40 @@ +. + +namespace core\output\progress_trace; + +/** + * Tests for \core\progress_trace\html_list_progress_trace. + * + * @package core + * @category test + * @copyright 2024 Andrew Lyons + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @covers \core\progress_trace\html_list_progress_trace + */ +final class html_list_progress_trace_test extends \advanced_testcase { + /** + * Tests for the trace. + */ + public function test_trace(): void { + $trace = new html_list_progress_trace(); + $trace->output('do'); + $trace->output('re', 1); + $trace->output('mi', 2); + $trace->finished(); + $this->expectOutputString("\n"); + } +} diff --git a/lib/tests/output/progress_trace/html_progress_trace_test.php b/lib/tests/output/progress_trace/html_progress_trace_test.php new file mode 100644 index 00000000000..ae0bcb25f9c --- /dev/null +++ b/lib/tests/output/progress_trace/html_progress_trace_test.php @@ -0,0 +1,40 @@ +. + +namespace core\output\progress_trace; + +/** + * Tests for \core\progress_trace\html_progress_trace. + * + * @package core + * @category test + * @copyright 2024 Andrew Lyons + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @covers \core\progress_trace\html_progress_trace + */ +final class html_progress_trace_test extends \advanced_testcase { + /** + * Tests for the trace. + */ + public function test_trace(): void { + $trace = new html_progress_trace(); + $trace->output('do'); + $trace->output('re', 1); + $trace->output('mi', 2); + $trace->finished(); + $this->expectOutputString("

do

\n

  re

\n

    mi

\n"); + } +} diff --git a/lib/tests/output/progress_trace/null_progress_trace_test.php b/lib/tests/output/progress_trace/null_progress_trace_test.php new file mode 100644 index 00000000000..6d34a3214aa --- /dev/null +++ b/lib/tests/output/progress_trace/null_progress_trace_test.php @@ -0,0 +1,42 @@ +. + +namespace core\output\progress_trace; + +/** + * Tests for \core\progress_trace\null_progress_trace. + * + * @package core + * @category test + * @copyright 2024 Andrew Lyons + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @covers \core\progress_trace\null_progress_trace + */ +final class null_progress_trace_test extends \advanced_testcase { + /** + * Tests for the trace. + */ + public function test_trace(): void { + $trace = new null_progress_trace(); + $trace->output('do'); + $trace->output('re', 1); + $trace->output('mi', 2); + $trace->finished(); + $output = ob_get_contents(); + $this->assertSame('', $output); + $this->expectOutputString(''); + } +} diff --git a/lib/tests/output/progress_trace/progress_trace_buffer_test.php b/lib/tests/output/progress_trace/progress_trace_buffer_test.php new file mode 100644 index 00000000000..53c63ca18b9 --- /dev/null +++ b/lib/tests/output/progress_trace/progress_trace_buffer_test.php @@ -0,0 +1,55 @@ +. + +namespace core\output\progress_trace; + +/** + * Tests for \core\progress_trace\progress_trace_buffer. + * + * @package core + * @category test + * @copyright 2024 Andrew Lyons + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @covers \core\progress_trace\progress_trace_buffer + */ +final class progress_trace_buffer_test extends \advanced_testcase { + /** + * Tests for the trace. + */ + public function test_trace(): void { + $trace = new progress_trace_buffer(new html_progress_trace()); + ob_start(); + $trace->output('do'); + $trace->output('re', 1); + $trace->output('mi', 2); + $trace->finished(); + $output = ob_get_contents(); + ob_end_clean(); + $this->assertSame("

do

\n

  re

\n

    mi

\n", $output); + $this->assertSame($output, $trace->get_buffer()); + + $trace = new progress_trace_buffer(new html_progress_trace(), false); + $trace->output('do'); + $trace->output('re', 1); + $trace->output('mi', 2); + $trace->finished(); + $this->assertSame("

do

\n

  re

\n

    mi

\n", $trace->get_buffer()); + $this->assertSame("

do

\n

  re

\n

    mi

\n", $trace->get_buffer()); + $trace->reset_buffer(); + $this->assertSame('', $trace->get_buffer()); + $this->expectOutputString(''); + } +} diff --git a/lib/tests/output/progress_trace/test_combined_progress_trace_test.php b/lib/tests/output/progress_trace/test_combined_progress_trace_test.php new file mode 100644 index 00000000000..663bac655ff --- /dev/null +++ b/lib/tests/output/progress_trace/test_combined_progress_trace_test.php @@ -0,0 +1,45 @@ +. + +namespace core\output\progress_trace; + +/** + * Tests for \core\progress_trace\test_combined_progress_trace. + * + * @package core + * @category test + * @copyright 2024 Andrew Lyons + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @covers \core\progress_trace\test_combined_progress_trace + */ +final class test_combined_progress_trace_test extends \advanced_testcase { + /** + * Tests for the trace. + */ + public function test_trace(): void { + $trace1 = new progress_trace_buffer(new html_progress_trace(), false); + $trace2 = new progress_trace_buffer(new text_progress_trace(), false); + + $trace = new combined_progress_trace([$trace1, $trace2]); + $trace->output('do'); + $trace->output('re', 1); + $trace->output('mi', 2); + $trace->finished(); + $this->assertSame("

do

\n

  re

\n

    mi

\n", $trace1->get_buffer()); + $this->assertSame("do\n re\n mi\n", $trace2->get_buffer()); + $this->expectOutputString(''); + } +} diff --git a/lib/tests/output/progress_trace/text_progress_trace_test.php b/lib/tests/output/progress_trace/text_progress_trace_test.php new file mode 100644 index 00000000000..fd8d3fe8ebd --- /dev/null +++ b/lib/tests/output/progress_trace/text_progress_trace_test.php @@ -0,0 +1,42 @@ +. + +namespace core\output\progress_trace; + +/** + * Tests for \core\progress_trace\text_progress_trace. + * + * @package core + * @category test + * @copyright 2024 Andrew Lyons + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + * @covers \core\progress_trace\text_progress_trace + */ +final class text_progress_trace_test extends \advanced_testcase { + /** + * Tests for the trace. + */ + public function test_trace(): void { + $this->resetAfterTest(false); + + $trace = new text_progress_trace(); + $trace->output('do'); + $trace->output('re', 1); + $trace->output('mi', 2); + $trace->finished(); + $this->expectOutputString("do\n re\n mi\n"); + } +} diff --git a/lib/tests/weblib_test.php b/lib/tests/weblib_test.php index 4de970c12d0..1a5d4f84553 100644 --- a/lib/tests/weblib_test.php +++ b/lib/tests/weblib_test.php @@ -510,112 +510,6 @@ class weblib_test extends advanced_testcase { $this->assertSame($CFG->wwwroot.'/course/view.php?id=1', qualified_me()); } - /** - * @covers \null_progress_trace - */ - public function test_null_progress_trace(): void { - $this->resetAfterTest(false); - - $trace = new null_progress_trace(); - $trace->output('do'); - $trace->output('re', 1); - $trace->output('mi', 2); - $trace->finished(); - $output = ob_get_contents(); - $this->assertSame('', $output); - $this->expectOutputString(''); - } - - /** - * @covers \null_progress_trace - */ - public function test_text_progress_trace(): void { - $this->resetAfterTest(false); - - $trace = new text_progress_trace(); - $trace->output('do'); - $trace->output('re', 1); - $trace->output('mi', 2); - $trace->finished(); - $this->expectOutputString("do\n re\n mi\n"); - } - - /** - * @covers \html_progress_trace - */ - public function test_html_progress_trace(): void { - $this->resetAfterTest(false); - - $trace = new html_progress_trace(); - $trace->output('do'); - $trace->output('re', 1); - $trace->output('mi', 2); - $trace->finished(); - $this->expectOutputString("

do

\n

  re

\n

    mi

\n"); - } - - /** - * @covers \html_list_progress_trace - */ - public function test_html_list_progress_trace(): void { - $this->resetAfterTest(false); - - $trace = new html_list_progress_trace(); - $trace->output('do'); - $trace->output('re', 1); - $trace->output('mi', 2); - $trace->finished(); - $this->expectOutputString("
    \n
  • do
      \n
    • re
        \n
      • mi
      • \n
      \n
    • \n
    \n
  • \n
\n"); - } - - /** - * @covers \progress_trace_buffer - */ - public function test_progress_trace_buffer(): void { - $this->resetAfterTest(false); - - $trace = new progress_trace_buffer(new html_progress_trace()); - ob_start(); - $trace->output('do'); - $trace->output('re', 1); - $trace->output('mi', 2); - $trace->finished(); - $output = ob_get_contents(); - ob_end_clean(); - $this->assertSame("

do

\n

  re

\n

    mi

\n", $output); - $this->assertSame($output, $trace->get_buffer()); - - $trace = new progress_trace_buffer(new html_progress_trace(), false); - $trace->output('do'); - $trace->output('re', 1); - $trace->output('mi', 2); - $trace->finished(); - $this->assertSame("

do

\n

  re

\n

    mi

\n", $trace->get_buffer()); - $this->assertSame("

do

\n

  re

\n

    mi

\n", $trace->get_buffer()); - $trace->reset_buffer(); - $this->assertSame('', $trace->get_buffer()); - $this->expectOutputString(''); - } - - /** - * @covers \combined_progress_trace - */ - public function test_combined_progress_trace(): void { - $this->resetAfterTest(false); - - $trace1 = new progress_trace_buffer(new html_progress_trace(), false); - $trace2 = new progress_trace_buffer(new text_progress_trace(), false); - - $trace = new combined_progress_trace(array($trace1, $trace2)); - $trace->output('do'); - $trace->output('re', 1); - $trace->output('mi', 2); - $trace->finished(); - $this->assertSame("

do

\n

  re

\n

    mi

\n", $trace1->get_buffer()); - $this->assertSame("do\n re\n mi\n", $trace2->get_buffer()); - $this->expectOutputString(''); - } - /** * @covers ::set_debugging */