el = new EditLib(); } protected function tearDown(): void { global $prefs; // restore preference default state $prefs['feature_use_three_colon_centertag'] = 'n'; } /** * Align divs 'left' * * @group marked-as-incomplete */ public function testBlockAlignLeft(): void { $this->markTestIncomplete('Work in progress.'); $ex = 'This text is aligned left'; /* * default */ $inData = 'This text is aligned left'; $out = $this->el->parseToWysiwyg($inData); $this->assertEquals($ex, $out); /* * explicit */ $ex = '
This text is aligned left
'; $inData = '{DIV(align="left")}This text is aligned left{DIV}'; $out = $this->el->parseToWysiwyg($inData); $this->assertEquals($ex, $out); } /** * Align divs 'center' * * @group marked-as-incomplete */ public function testBlockAlignCentered(): void { global $prefs; $this->markTestIncomplete('Work in progress.'); /* * two colon */ $prefs['feature_use_three_colon_centertag'] = 'n'; $ex = '
This text is centered
'; $inData = '::This text is centered::'; $out = $this->el->parseToWysiwyg($inData); $this->assertEquals($ex, $out); /* * three colon */ $prefs['feature_use_three_colon_centertag'] = 'y'; $ex = '
This text is centered
'; $inData = ':::This text is centered:::'; $out = $this->el->parseToWysiwyg($inData); $this->assertEquals($ex, $out); } /** * Align divs 'right' * * @group marked-as-incomplete */ public function testBlockAlignRight(): void { $this->markTestIncomplete('Work in progress.'); $ex = '
This text is aligned right
'; $inData = '{DIV(align="right")}This text is aligned right{DIV}'; $out = $this->el->parseToWysiwyg($inData); $this->assertEquals($ex, $out); } /** * Align divs 'justify' * * @group marked-as-incomplete */ public function testBlockAlignJustified(): void { $this->markTestIncomplete('Work in progress.'); $ex = '
This text is justified
'; $inData = '{DIV(align="justify")}This text is justified{DIV}'; $out = $this->el->parseToWysiwyg($inData); $this->assertEquals($ex, $out); } /** * Align paragraphs 'left' * * @group marked-as-incomplete */ public function testParagraphAlignLeft(): void { $this->markTestIncomplete('Work in progress.'); $ex = '

This text is aligned

'; $inData = '{DIV(type="p", align="left")}This text is aligned{DIV}'; $out = $this->el->parseToWysiwyg($inData); $this->assertEquals($ex, $out); } /** * Centered headings must use style attribute */ public function testCenterdHeadings(): void { global $prefs; # # unnumbered # $prefs['feature_use_three_colon_centertag'] = 'n'; $prefs['wiki_heading_links'] = 'n'; $inData = '!::Heading::'; $ex = '

Heading

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $prefs['feature_use_three_colon_centertag'] = 'y'; $inData = '!:::Heading:::'; $ex = '

Heading

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); /* * numbered */ $prefs['feature_use_three_colon_centertag'] = 'n'; $inData = '!#::Heading::'; $ex = '

1. Heading

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $prefs['feature_use_three_colon_centertag'] = 'y'; $inData = '!#:::Heading:::'; $ex = '

1. Heading

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); } /** * Headings 1-6 */ public function testNumberedHeadings(): void { $inData = '!#Heading Level 1'; $ex = '

1. Heading Level 1

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $inData .= "\n"; // must keep lover level headings, otherwise we will get an error (undefined number) $inData .= '!!#Heading Level 2'; $ex .= "\n"; $ex .= '

1.1. Heading Level 2

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $inData .= "\n"; $inData .= '!!!#Heading Level 3'; $ex .= "\n"; $ex .= '

1.1.1. Heading Level 3

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $inData .= "\n"; $inData .= '!!!!#Heading Level 4'; $ex .= "\n"; $ex .= '

1.1.1.1. Heading Level 4

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $inData .= "\n"; $inData .= '!!!!!#Heading Level 5'; $ex .= "\n"; $ex .= '
1.1.1.1.1. Heading Level 5
'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $inData .= "\n"; $inData .= '!!!!!!#Heading Level 6'; $ex .= "\n"; $ex .= '
1.1.1.1.1.1. Heading Level 6
'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); } /** * Align paragraphs 'center' * * @group marked-as-incomplete */ public function testParagraphAlignCentered(): void { $this->markTestIncomplete('Work in progress.'); $ex = '

This text is aligned

'; $inData = '{DIV(type="p", align="center")}This text is aligned{DIV}'; $out = $this->el->parseToWysiwyg($inData); $this->assertEquals($ex, $out); } /** * Align paragraphs 'right' * * @group marked-as-incomplete */ public function testParagraphAlignRight(): void { $this->markTestIncomplete('Work in progress.'); $ex = '

This text is aligned

'; $inData = '{DIV(type="p", align="right")}This text is aligned{DIV}'; $out = $this->el->parseToWysiwyg($inData); $this->assertEquals($ex, $out); } /** * Align paragraphs 'justify' * * @group marked-as-incomplete */ public function testParagraphAlignJustified(): void { $this->markTestIncomplete('Work in progress.'); $ex = '

This text is aligned

'; $inData = '{DIV(type="p", align="justify")}This text is aligned{DIV}'; $out = $this->el->parseToWysiwyg($inData); $this->assertEquals($ex, $out); } /** * Headings 1-6 */ public function testUnnumberedHeadings(): void { $inData = '!Heading Level 1'; $ex = '

Heading Level 1

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $inData = '!!Heading Level 2'; $ex = '

Heading Level 2

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $inData = '!!!Heading Level 3'; $ex = '

Heading Level 3

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $inData = '!!!!Heading Level 4'; $ex = '

Heading Level 4

'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $inData = '!!!!!Heading Level 5'; $ex = '
Heading Level 5
'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); $inData = '!!!!!!Heading Level 6'; $ex = '
Heading Level 6
'; $out = trim($this->el->parseToWysiwyg($inData)); $this->assertEquals($ex, $out); } }