/** * Encoding and charset tests. */ public function testEncodings() { $this->Mail->CharSet = 'iso-8859-1'; $this->assertEquals('=A1Hola!_Se=F1or!', $this->Mail->encodeQ("�Hola! Se�or!", 'text'), 'Q Encoding (text) failed'); $this->assertEquals('=A1Hola!_Se=F1or!', $this->Mail->encodeQ("�Hola! Se�or!", 'comment'), 'Q Encoding (comment) failed'); $this->assertEquals('=A1Hola!_Se=F1or!', $this->Mail->encodeQ("�Hola! Se�or!", 'phrase'), 'Q Encoding (phrase) failed'); $this->Mail->CharSet = 'UTF-8'; $this->assertEquals('=C2=A1Hola!_Se=C3=B1or!', $this->Mail->encodeQ("¡Hola! Señor!", 'text'), 'Q Encoding (text) failed'); //Strings containing '=' are a special case $this->assertEquals('Nov=C3=A1=3D', $this->Mail->encodeQ("Nová=", 'text'), 'Q Encoding (text) failed 2'); $this->assertEquals($this->Mail->encodeString('hello', 'binary'), 'hello', 'Binary encoding changed input'); $this->Mail->ErrorInfo = ''; $this->Mail->encodeString('hello', 'asdfghjkl'); $this->assertNotEmpty($this->Mail->ErrorInfo, 'Invalid encoding not detected'); }