/** * @covers Intacct\Xml\SynchronousResponse::__construct * @covers Intacct\Xml\SynchronousResponse::setOperation * @covers Intacct\Xml\SynchronousResponse::getOperation */ public function testGetOperation() { $xml = <<<EOF <?xml version="1.0" encoding="UTF-8"?> <response> <control> <status>success</status> <senderid>testsenderid</senderid> <controlid>ControlIdHere</controlid> <uniqueid>false</uniqueid> <dtdversion>3.0</dtdversion> </control> <operation> <authentication> <status>success</status> <userid>fakeuser</userid> <companyid>fakecompany</companyid> <sessiontimestamp>2015-10-22T20:58:27-07:00</sessiontimestamp> </authentication> <result> <status>success</status> <function>getAPISession</function> <controlid>testControlId</controlid> <data> <api> <sessionid>fAkESesSiOnId..</sessionid> <endpoint>https://api.intacct.com/ia/xml/xmlgw.phtml</endpoint> </api> </data> </result> </operation> </response> EOF; $response = new SynchronousResponse($xml); $operation = $response->getOperation(); $this->assertThat($operation, $this->isInstanceOf('Intacct\\Xml\\Response\\Operation')); }
/** * Sets up the fixture, for example, opens a network connection. * This method is called before a test is executed. */ protected function setUp() { $xml = <<<EOF <?xml version="1.0" encoding="UTF-8"?> <response> <control> <status>success</status> <senderid>testsenderid</senderid> <controlid>ControlIdHere</controlid> <uniqueid>false</uniqueid> <dtdversion>3.0</dtdversion> </control> <operation> <authentication> <status>success</status> <userid>fakeuser</userid> <companyid>fakecompany</companyid> <sessiontimestamp>2015-10-24T18:56:52-07:00</sessiontimestamp> </authentication> <result> <status>success</status> <function>getAPISession</function> <controlid>testControlId</controlid> <data> <api> <sessionid>faKEsesSiOnId..</sessionid> <endpoint>https://api.intacct.com/ia/xml/xmlgw.phtml</endpoint> </api> </data> </result> </operation> </response> EOF; $response = new SynchronousResponse($xml); $this->object = $response->getOperation(); }
/** * @covers Intacct\Xml\Response\Operation\Result::__construct * @covers Intacct\Xml\Response\Operation\Result::getErrors */ public function testGetErrors() { $xml = <<<EOF <?xml version="1.0" encoding="UTF-8"?> <response> <control> <status>success</status> <senderid>testsenderid</senderid> <controlid>ControlIdHere</controlid> <uniqueid>false</uniqueid> <dtdversion>3.0</dtdversion> </control> <operation> <authentication> <status>success</status> <userid>fakeuser</userid> <companyid>fakecompany</companyid> <sessiontimestamp>2015-10-25T11:07:22-07:00</sessiontimestamp> </authentication> <result> <status>failure</status> <function>readByQuery</function> <controlid>testControlId</controlid> <errormessage> <error> <errorno>Query Failed</errorno> <description></description> <description2>Object definition BADOBJECT not found</description2> <correction></correction> </error> </errormessage> </result> </operation> </response> EOF; $response = new SynchronousResponse($xml); $operation = $response->getOperation(); $results = $operation->getResults(); $result = $results[0]; $this->assertEquals('failure', $result->getStatus()); $this->assertInternalType('array', $result->getErrors()); }
/** * @covers Intacct\Xml\Response\Operation\Authentication::__construct * @covers Intacct\Xml\Response\Operation\Authentication::setSlideInUser */ public function testGetSlideInCPAUserLogin() { $xml = <<<EOF <?xml version="1.0" encoding="UTF-8"?> <response> <control> <status>success</status> <senderid>testsenderid</senderid> <controlid>ControlIdHere</controlid> <uniqueid>false</uniqueid> <dtdversion>3.0</dtdversion> </control> <operation> <authentication> <status>success</status> <userid>CPAUser</userid> <companyid>fakecompany</companyid> <sessiontimestamp>2015-10-24T18:56:52-07:00</sessiontimestamp> </authentication> <result> <status>success</status> <function>getAPISession</function> <controlid>testControlId</controlid> <data> <api> <sessionid>faKEsesSiOnId..</sessionid> <endpoint>https://api.intacct.com/ia/xml/xmlgw.phtml</endpoint> </api> </data> </result> </operation> </response> EOF; $response = new SynchronousResponse($xml); $operation = $response->getOperation(); $authentication = $operation->getAuthentication(); $this->assertEquals('CPAUser', $authentication->getUserId()); $this->assertEquals(true, $authentication->getSlideInUser()); }