setMwGlobals( 'wgSearchType', 'MockSearch' ); } public function updateText( $text ) { return trim( SearchUpdate::updateText( $text ) ); } /** * @covers SearchUpdate::updateText */ public function testUpdateText() { $this->assertEquals( 'test', $this->updateText( '
TeSt
' ), 'HTML stripped, text lowercased' ); $this->assertEquals( 'foo bar boz quux', $this->updateText( <<
foo
bar bozquux EOT ), 'Stripping HTML tables' ); $this->assertEquals( 'a b', $this->updateText( 'a > b' ), 'Handle unclosed tags' ); $text = str_pad( "foo assertNotEquals( '', $this->updateText( $text ), 'Bug 18609' ); } /** * @covers SearchUpdate::updateText * Test bug 32712 * Test if unicode quotes in article links make its search index empty */ public function testUnicodeLinkSearchIndexError() { $text = "text „http://example.com“ text"; $result = $this->updateText( $text ); $processed = preg_replace( '/Q/u', 'Q', $result ); $this->assertTrue( $processed != '', 'Link surrounded by unicode quotes should not fail UTF-8 validation' ); } }