Blame view

vendor/ezyang/htmlpurifier/tests/HTMLPurifier/HTMLT.php 1.15 KB
abf1649b   andryeyev   Чистая установка ...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
  <?php
  
  class HTMLPurifier_HTMLT extends HTMLPurifier_Harness
  {
      protected $path;
  
      public function __construct($path)
      {
          $this->path = $path;
          parent::__construct($path);
      }
  
      public function testHtmlt()
      {
          $parser = new HTMLPurifier_StringHashParser();
          $hash = $parser->parseFile($this->path); // assume parser normalizes to "\n"
          if (isset($hash['SKIPIF'])) {
              if (eval($hash['SKIPIF'])) return;
          }
          $this->config->set('Output.Newline', "\n");
          if (isset($hash['INI'])) {
              // there should be a more efficient way than writing another
              // ini file every time... probably means building a parser for
              // ini (check out the yaml implementation we saw somewhere else)
              $ini_file = $this->path . '.ini';
              file_put_contents($ini_file, $hash['INI']);
              $this->config->loadIni($ini_file);
          }
          $expect = isset($hash['EXPECT']) ? $hash['EXPECT'] : $hash['HTML'];
          $this->assertPurification(rtrim($hash['HTML']), rtrim($expect));
          if (isset($hash['INI'])) unlink($ini_file);
      }
  }
  
  // vim: et sw=4 sts=4