PluginProbe ʕ •ᴥ•ʔ
Brevo – Email, SMS, Web Push, Chat, and more. / 3.2.0
Brevo – Email, SMS, Web Push, Chat, and more. v3.2.0
2.9.13 2.9.14 2.9.15 2.9.16 2.9.17 2.9.18 2.9.4 2.9.5 2.9.6 2.9.7 2.9.8 2.9.9 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.9 3.1.0 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.2 3.1.20 3.1.21 3.1.22 3.1.23 3.1.24 3.1.25 3.1.26 3.1.27 3.1.28 3.1.29 3.1.3 3.1.30 3.1.31 3.1.32 3.1.33 3.1.34 3.1.35 3.1.36 3.1.37 3.1.38 3.1.39 3.1.4 3.1.40 3.1.41 3.1.42 3.1.43 3.1.44 3.1.45 3.1.46 3.1.47 3.1.48 3.1.49 3.1.5 3.1.50 3.1.51 3.1.52 3.1.53 3.1.54 3.1.55 3.1.56 3.1.57 3.1.58 3.1.59 3.1.6 3.1.60 3.1.61 3.1.62 3.1.63 3.1.64 3.1.65 3.1.66 3.1.67 3.1.68 3.1.69 3.1.7 3.1.70 3.1.71 3.1.72 3.1.73 3.1.74 3.1.75 3.1.76 3.1.77 3.1.78 3.1.79 3.1.8 3.1.80 3.1.81 3.1.82 3.1.83 3.1.84 3.1.85 3.1.86 3.1.87 3.1.88 3.1.89 3.1.9 3.1.90 3.1.91 3.1.92 3.1.93 3.1.94 3.1.95 3.1.96 3.1.97 3.1.98 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 trunk 1.0 1.5 2.0.8 2.9.10 2.9.11 2.9.12
mailin / wonderpush-php-lib / tests / Net / ResponseTest.php
mailin / wonderpush-php-lib / tests / Net Last commit date
ResponseTest.php 1 year ago
ResponseTest.php
90 lines
1 <?php
2
3 namespace WonderPush\Net;
4
5 class ResponseTest extends \WonderPush\TestCase {
6
7 public function testParsingResetsOnSetRawBody() {
8 $response = new Response();
9 $this->assertAttributeEquals(null, 'isParsed', $response);
10 $response->setRawBody('{"foo":"bar"}');
11 $this->assertAttributeEquals(null, 'isParsed', $response);
12 $expected = new \stdClass();
13 $expected->foo = 'bar';
14 $this->assertEquals($expected, $response->parsedBody());
15 $this->assertAttributeEquals(true, 'isParsed', $response);
16
17 $response->setRawBody('{"foo":"qux"}');
18 $this->assertAttributeEquals(null, 'isParsed', $response);
19 $expected = new \stdClass();
20 $expected->foo = 'qux';
21 $this->assertEquals($expected, $response->parsedBody());
22 $this->assertAttributeEquals(true, 'isParsed', $response);
23 }
24
25 public function testParseErrorParsesObjectAndResetsOnSetRawBody() {
26 $response = new Response();
27 $this->assertAttributeEquals(null, 'isParsed', $response);
28 $response->setRawBody('{"foo":"bar"}');
29 $this->assertAttributeEquals(null, 'isParsed', $response);
30 $this->assertEquals(JSON_ERROR_NONE, $response->parseError());
31 $this->assertAttributeEquals(true, 'isParsed', $response);
32
33 $response->setRawBody('#');
34 $this->assertAttributeEquals(null, 'isParsed', $response);
35 $parseError = $response->parseError();
36 $this->assertInstanceOf('\WonderPush\Errors\Parsing', $parseError);
37 /** @var $parseError \WonderPush\Errors\Parsing */
38 $this->assertEquals(JSON_ERROR_SYNTAX, $parseError->getJsonErrorCode());
39 $this->assertAttributeEquals(true, 'isParsed', $response);
40 }
41
42 public function testParseErrorMsgParsesObjectAndResetsOnSetRawBody() {
43 $response = new Response();
44 $this->assertAttributeEquals(null, 'isParsed', $response);
45 $response->setRawBody('{"foo":"bar"}');
46 $this->assertAttributeEquals(null, 'isParsed', $response);
47 $this->assertNull($response->parseError());
48 $this->assertAttributeEquals(true, 'isParsed', $response);
49
50 $response->setRawBody('#');
51 $this->assertAttributeEquals(null, 'isParsed', $response);
52 $this->assertInstanceOf('\WonderPush\Errors\Parsing', $response->parseError()); // "Syntax error" / "unexpected character"
53 $this->assertAttributeEquals(true, 'isParsed', $response);
54 }
55
56 public function testParseJsonObject() {
57 $response = Response::_new()
58 ->setRawBody('{"foo":"bar"}');
59 $expected = new \stdClass();
60 $expected->foo = 'bar';
61 $this->assertEquals($expected, $response->parsedBody());
62 }
63
64 public function testParseJsonEmptyObjectAsObject() {
65 $response = Response::_new()
66 ->setRawBody('{}');
67 $this->assertNotEquals(array(), $response->parsedBody());
68 $this->assertEquals(new \stdClass(), $response->parsedBody());
69 }
70
71 public function testParseJsonArray() {
72 $response = Response::_new()
73 ->setRawBody('[]');
74 $this->assertEquals(array(), $response->parsedBody());
75 }
76
77 public function testParseJsonBool() {
78 $response = Response::_new()
79 ->setRawBody('true');
80 $this->assertEquals(true, $response->parsedBody());
81 }
82
83 public function testParseJsonString() {
84 $response = Response::_new()
85 ->setRawBody('"foo"');
86 $this->assertEquals('foo', $response->parsedBody());
87 }
88
89 }
90