diff --git a/lib/Cake/Test/Case/Utility/StringTest.php b/lib/Cake/Test/Case/Utility/StringTest.php
index 8f4abdd9b..062005ec1 100644
--- a/lib/Cake/Test/Case/Utility/StringTest.php
+++ b/lib/Cake/Test/Case/Utility/StringTest.php
@@ -380,17 +380,17 @@ TEXT;
$this->assertSame($this->Text->truncate($text3, 20), '© 2005-20...');
$this->assertSame($this->Text->truncate($text4, 15), ' This image ...');
- $this->assertSame($this->Text->truncate($text4, 45, array('html' => true)), ' This image tag is not XHTML conform!
But t...');
- $this->assertSame($this->Text->truncate($text4, 90, array('html' => true)), ' This image tag is not XHTML conform!
But the following image tag should be conform
Grea...');
+ $this->assertSame($this->Text->truncate($text1, 15, array('html' => true)), 'The quick brow' . chr(226));
+ $this->assertSame($this->Text->truncate($text1, 15, array('exact' => false, 'html' => true)), 'The quick' . chr(226));
+ $this->assertSame($this->Text->truncate($text2, 10, array('html' => true)), 'Heizölrüc' . chr(226));
+ $this->assertSame($this->Text->truncate($text2, 10, array('exact' => false, 'html' => true)), chr(226));
+ $this->assertSame($this->Text->truncate($text3, 20, array('html' => true)), '© 2005-2007, Cake S' . chr(226) . '');
+ $this->assertSame($this->Text->truncate($text4, 15, array('html' => true)), ' This image ta' . chr(226));
+ $this->assertSame($this->Text->truncate($text4, 45, array('html' => true)), ' This image tag is not XHTML conform!
But the' . chr(226) . '');
+ $this->assertSame($this->Text->truncate($text4, 90, array('html' => true)), ' This image tag is not XHTML conform!
But the following image tag should be conform
Great,' . chr(226));
$this->assertSame($this->Text->truncate($text5, 6, array('ellipsis' => '', 'html' => true)), '012345');
$this->assertSame($this->Text->truncate($text5, 20, array('ellipsis' => '', 'html' => true)), $text5);
- $this->assertSame($this->Text->truncate($text6, 57, array('exact' => false, 'html' => true)), "
Extra dates have been announced for this year's...
"); + $this->assertSame($this->Text->truncate($text6, 57, array('exact' => false, 'html' => true)), "Extra dates have been announced for this year's" . chr(226) . "
"); $this->assertSame($this->Text->truncate($text7, 255), $text7); $this->assertSame($this->Text->truncate($text7, 15), 'El moño está...'); $this->assertSame($this->Text->truncate($text8, 15), 'Vive la R' . chr(195) . chr(169) . 'pu...'); @@ -459,6 +459,29 @@ podeís adquirirla. $this->assertEquals($expected, $result); } +/** + * testTruncate method with non utf8 sites + * + * @return void + */ + public function testTruncateLegacy() { + Configure::write('App.encoding', 'ISO-8859-1'); + $text = '© 2005-2007, Cake Software Foundation, Inc.