createElement($open); } $errorHandler = new ParseError; $errorHandler->setHandler(); $data = new Data($input, "STDIN", $errorHandler); $tokenizer = new Tokenizer($data, $stack, $errorHandler); $tokenizer->state = $state; $actual = []; try { do { $t = $tokenizer->createToken(); $actual[] = $t; } while (!($t instanceof EOFToken)); } finally { $errorHandler->clearHandler(); } array_pop($actual); $actual = $this->combineCharacterTokens($actual); $this->assertEquals($expected, $actual); } public function provideStandardTokenizerTests() { $tests = []; $blacklist = ["pendingSpecChanges.test", "xmlViolation.test"]; foreach (new \GlobIterator(\dW\HTML5\BASE."tests/html5lib-tests/tokenizer/*.test", \FilesystemIterator::SKIP_DOTS | \FilesystemIterator::CURRENT_AS_PATHNAME) as $file) { if (!in_array(basename($file), $blacklist)) { $tests[] = $file; } } return $this->makeTokenTests(...$tests); } }