Exemplo n.º 1
0
 /**
  * loadXml() test
  */
 public function testLoadXml()
 {
     $xml = $this->_createXml();
     $parsed = $this->_fault->loadXml($xml);
     $this->assertTrue($parsed, $xml);
     $this->assertEquals(1000, $this->_fault->getCode());
     $this->assertEquals('Error string', $this->_fault->getMessage());
     $this->assertFalse($this->_fault->loadXml('<wellformedButInvalid/>'));
     $this->_fault->loadXml('<methodResponse><fault><value><struct>' . '<member><name>faultString</name><value><string>str</string></value></member>' . '</struct></value></fault></methodResponse>');
     $this->assertSame(404, $this->_fault->getCode(), 'If no fault code is given, use 404 as a default');
     $this->_fault->loadXml('<methodResponse><fault><value><struct>' . '<member><name>faultCode</name><value><int>610</int></value></member>' . '</struct></value></fault></methodResponse>');
     $this->assertSame('Invalid method class', $this->_fault->getMessage(), 'If empty fault string is given, resolve the code');
     $this->_fault->loadXml('<methodResponse><fault><value><struct>' . '<member><name>faultCode</name><value><int>1234</int></value></member>' . '</struct></value></fault></methodResponse>');
     $this->assertSame('Unknown Error', $this->_fault->getMessage(), 'If code resolval failed, use "Unknown Error"');
 }
Exemplo n.º 2
0
 /**
  * loadXml() test
  */
 public function testLoadXml()
 {
     $xml = $this->_createXml();
     try {
         $parsed = $this->_fault->loadXml($xml);
     } catch (\Exception $e) {
         $this->fail('Failed to parse XML: ' . $e->getMessage());
     }
     $this->assertTrue($parsed, $xml);
     $this->assertEquals(1000, $this->_fault->getCode());
     $this->assertEquals('Error string', $this->_fault->getMessage());
     try {
         $parsed = $this->_fault->loadXml('foo');
         $this->fail('Should not parse invalid XML');
     } catch (XmlRpc\Exception $e) {
         // do nothing
     }
     $this->assertFalse($this->_fault->loadXml('<wellformedButInvalid/>'));
     try {
         $this->assertFalse($this->_fault->loadXml('<methodResponse><fault/></methodResponse>'));
         $this->fail('Should throw an exception. No value element in fault');
     } catch (XmlRpc\Exception $e) {
         $this->assertEquals('Invalid fault structure', $e->getMessage());
         $this->assertSame(500, $e->getCode());
     }
     try {
         $this->_fault->loadXml('<methodResponse><fault/></methodResponse>');
         $this->fail('Should throw an exception. No struct element in //fault/value');
     } catch (XmlRpc\Exception $e) {
         $this->assertEquals('Invalid fault structure', $e->getMessage());
         $this->assertSame(500, $e->getCode());
     }
     try {
         $this->_fault->loadXml('<methodResponse><fault><value><struct/></value></fault></methodResponse>');
         $this->fail('Should throw an exception. Empty fault code and string in //fault/value');
     } catch (XmlRpc\Exception $e) {
         $this->assertEquals('Fault code and string required', $e->getMessage());
     }
     $this->_fault->loadXml('<methodResponse><fault><value><struct>' . '<member><name>faultString</name><value><string>str</string></value></member>' . '</struct></value></fault></methodResponse>');
     $this->assertSame(404, $this->_fault->getCode(), 'If no fault code is given, use 404 as a default');
     $this->_fault->loadXml('<methodResponse><fault><value><struct>' . '<member><name>faultCode</name><value><int>610</int></value></member>' . '</struct></value></fault></methodResponse>');
     $this->assertSame('Invalid method class', $this->_fault->getMessage(), 'If empty fault string is given, resolve the code');
     $this->_fault->loadXml('<methodResponse><fault><value><struct>' . '<member><name>faultCode</name><value><int>1234</int></value></member>' . '</struct></value></fault></methodResponse>');
     $this->assertSame('Unknown Error', $this->_fault->getMessage(), 'If code resolval failed, use "Unknown Error"');
 }
Exemplo n.º 3
0
 /**
  * loadXml() test
  */
 public function testLoadXml()
 {
     $xml = $this->_createXml();
     try {
         $parsed = $this->_fault->loadXml($xml);
     } catch (Exception $e) {
         $this->fail('Failed to parse XML: ' . $e->getMessage());
     }
     $this->assertTrue($parsed, $xml);
     $this->assertEquals(1000, $this->_fault->getCode());
     $this->assertEquals('Error string', $this->_fault->getMessage());
     try {
         $parsed = $this->_fault->loadXml('foo');
         $this->fail('Should not parse invalid XML');
     } catch (Exception $e) {
         // do nothing
     }
 }
 public function testUnknownErrorIsUsedIfUnknownErrorCodeEndEmptyMessageIsPassed()
 {
     $fault = new Zend_XmlRpc_Fault(1234);
     $this->assertSame(1234, $fault->getCode());
     $this->assertSame('Unknown error', $fault->getMessage());
 }