1 <?php 2 // This file is part of Moodle - http://moodle.org/ 3 // 4 // Moodle is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // Moodle is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU General Public License for more details. 13 // 14 // You should have received a copy of the GNU General Public License 15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 16 17 /** 18 * tool_brickfield check test. 19 * 20 * @package tool_brickfield 21 * @copyright 2020 onward: Brickfield Education Labs, https://www.brickfield.ie 22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 23 */ 24 25 namespace tool_brickfield\local\htmlchecker\common\checks; 26 27 defined('MOODLE_INTERNAL') || die(); 28 29 require_once ('all_checks.php'); 30 31 /** 32 * Class test_css_text_has_contrast_testcase 33 */ 34 class img_has_alt_test extends all_checks { 35 /** @var string Check type */ 36 public $checktype = 'img_has_alt'; 37 38 /** @var string Html fail 1 */ 39 private $htmlfail1 = <<<EOD 40 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 41 <html> 42 <head> 43 <title>Image alt attributes need to be specified - fail</title> 44 </head> 45 <body> 46 <img src="rex.jpg" alt=""> 47 </body> 48 </html> 49 EOD; 50 51 /** @var string Html fail 2 */ 52 private $htmlfail2 = <<<EOD 53 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 54 <html> 55 <head> 56 <title>Image alt attributes need to be specified - fail</title> 57 </head> 58 <body> 59 <img src="rex.jpg"> 60 </body> 61 </html> 62 EOD; 63 64 /** @var string Html pass */ 65 private $htmlpass = <<<EOD 66 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 67 <html> 68 <head> 69 <title>Image alt attributes need to be specified - fail</title> 70 </head> 71 <body> 72 <img src="rex.jpg" alt="this is an image of rex"> 73 </body> 74 </html> 75 EOD; 76 /** 77 * Test for missing image alt text. 78 */ 79 public function test_check_fail() { 80 $results = $this->get_checker_results($this->htmlfail1); 81 $this->assertTrue($results[0]->element->tagName == 'img'); 82 83 $results = $this->get_checker_results($this->htmlfail2); 84 $this->assertTrue($results[0]->element->tagName == 'img'); 85 } 86 87 /** 88 * Test for present image alt text. 89 */ 90 public function test_check_pass() { 91 $results = $this->get_checker_results($this->htmlpass); 92 $this->assertTrue(count($results) == 0); 93 } 94 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body