assertEqual(format_string("& &&&&& &&"), "& &&&&& &&"); $this->assertEqual(format_string("ANother & &&&&& Category"), "ANother & &&&&& Category"); $this->assertEqual(format_string("ANother & &&&&& Category", true), "ANother & &&&&& Category"); $this->assertEqual(format_string("Nick's Test Site & Other things", true), "Nick's Test Site & Other things"); // String entities $this->assertEqual(format_string("""), """); // Digital entities $this->assertEqual(format_string("&11234;"), "&11234;"); // Unicode entities $this->assertEqual(format_string("ᅻ"), "ᅻ"); } function test_s() { $this->assertEqual(s("This Breaks \" Strict"), "This Breaks " Strict"); } function test_format_text_email() { $this->assertEqual("\n\nThis is a TEST", format_text_email('
This is a test
',FORMAT_HTML)); $this->assertEqual("\n\nThis is a TEST", format_text_email('This is a test
',FORMAT_HTML)); $this->assertEqual("& so is this", format_text_email('& so is this',FORMAT_HTML)); $tl = textlib_get_instance(); $this->assertEqual('Two bullets: '.$tl->code2utf8(8226).' *', format_text_email('Two bullets: • •',FORMAT_HTML)); $this->assertEqual($tl->code2utf8(0x7fd2).$tl->code2utf8(0x7fd2), format_text_email('習習',FORMAT_HTML)); } function test_highlight() { $this->assertEqual(highlight('good', 'This is good'), 'This is good'); $this->assertEqual(highlight('SpaN', 'span'), 'span'); $this->assertEqual(highlight('span', 'SpaN'), 'SpaN'); $this->assertEqual(highlight('span', 'span'), 'span'); $this->assertEqual(highlight('good is', 'He is good'), 'He is good'); $this->assertEqual(highlight('+good', 'This is good'), 'This is good'); $this->assertEqual(highlight('-good', 'This is good'), 'This is good'); $this->assertEqual(highlight('+good', 'This is goodness'), 'This is goodness'); $this->assertEqual(highlight('good', 'This is goodness'), 'This is goodness'); } function old_convert_urls_into_links(&$text) { /// Make lone URLs into links. eg http://moodle.com/ $text = eregi_replace("([[:space:]]|^|\(|\[)([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])", "\\1\\2://\\3\\4", $text); /// eg www.moodle.com $text = eregi_replace("([[:space:]]|^|\(|\[)www\.([^[:space:]]*)([[:alnum:]#?/&=])", "\\1www.\\2\\3", $text); } function get_test_text(){ return <<text www.moodle.org</p> text' => 'URL:
text www.moodle.org</p> text',
//decimal url parameter
'URL: www.moodle.org?u=1.23' => 'URL: www.moodle.org?u=1.23',
//escaped space in url
'URL: www.moodle.org?u=test+param&' => 'URL: www.moodle.org?u=test+param&',
//odd characters in url param
'URL: www.moodle.org?param=:)' => 'URL: www.moodle.org?param=:)',
//multiple urls
'URL: http://moodle.org www.moodle.org'
=> 'URL: http://moodle.org www.moodle.org',
//containing anchor tags including a class parameter and a url to convert
'URL: http://moodle.org www.moodle.org http://moodle.org'
=> 'URL: http://moodle.org www.moodle.org http://moodle.org',
//subdomain
'http://subdomain.moodle.org - URL' => 'http://subdomain.moodle.org - URL',
//multiple subdomains
'http://subdomain.subdomain.moodle.org - URL' => 'http://subdomain.subdomain.moodle.org - URL',
//looks almost like a link but isnt
'This contains http, http:// and www but no actual links.'=>'This contains http, http:// and www but no actual links.',
//no link at all
'This is a story about moodle.coming to a cinema near you.'=>'This is a story about moodle.coming to a cinema near you.',
//URLs containing utf 8 characters
'http://Iñtërnâtiônàlizætiøn.com?ô=nëø'=>'http://Iñtërnâtiônàlizætiøn.com?ô=nëø',
'www.Iñtërnâtiônàlizætiøn.com?ô=nëø'=>'www.Iñtërnâtiônàlizætiøn.com?ô=nëø',
//text containing utf 8 characters outside of a url
'Iñtërnâtiônàlizætiøn is important to http://moodle.org'=>'Iñtërnâtiônàlizætiøn is important to http://moodle.org',
//too hard to identify without additional regexs
'moodle.org' => 'moodle.org',
//some text with no link between related html tags
'no link here' => 'no link here',
//some text with a link between related html tags
'a link here www.moodle.org' => 'a link here www.moodle.org',
//some text containing a link within unrelated tags
'
This is some text. www.moodle.com then some more text
' => '
This is some text. www.moodle.com then some more text
',
//check we aren't modifying img tags
'image' => 'image',
'image' => 'image',
//and another url within one tag
'