/** * testSetGet * * @covers \RcmUser\Result * * @return void */ public function testSetGet() { $result = new Result(null, Result::CODE_SUCCESS, 'DEFAULT_MESSAGE'); $data = 'SOMEDATA'; $result->setCode(Result::CODE_SUCCESS); $result->setData($data); $messages = ['message 1']; $result->setMessages($messages); $result->setMessage('message 2'); $this->assertTrue($result->getCode() === Result::CODE_SUCCESS, 'Data not returned.'); $this->assertTrue($result->getData() === $data, 'Data not returned.'); $returnedMessages = $result->getMessages(); $this->assertTrue(is_array($returnedMessages), 'Messages should be array.'); $this->assertTrue($returnedMessages[0] === $messages[0], 'Message 1 not returned.'); $this->assertTrue($result->getMessage(1) === 'message 2', 'Message 2 not returned.'); $this->assertTrue($result->getMessage('nope', 'not_found') === 'not_found', 'Message unset default not returned.'); $this->assertTrue(is_string($result->getMessagesString()), 'Massages not returned as string'); $this->assertJson(json_encode($result), 'Json not returned'); $result->setCode(Result::CODE_SUCCESS); try { // this should NOT throw $result->throwFailure(); } catch (RcmUserResultException $e) { $this->fail("Exception thrown incorrectly"); return; } $result->setCode(Result::CODE_FAIL); try { $result->throwFailure(); } catch (RcmUserResultException $e) { $this->assertInstanceOf('\\RcmUser\\Exception\\RcmUserResultException', $e); return; } $this->fail("Expected exception not thrown"); }