+ /**
+ * Verifies that the HTTP response has status code 200 and
+ * content-type application/json; charset=utf-8
+ *
+ * @param HTTP_Request2_Response $res HTTP Response object
+ *
+ * @return void
+ */
+ protected function assertResponseJson200(HTTP_Request2_Response $res)
+ {
+ $this->assertEquals(200, $res->getStatus());
+ $this->assertEquals(
+ 'application/json; charset=utf-8',
+ $res->getHeader('content-type')
+ );
+ }
+
+
+
/**
* Writes a special unittest configuration file.
* The unittest config file is read when a GET request with unittestMode=1
{
$req = $this->getRequest();
$res = $req->send();
-
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
-
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
);
$res = $this->getRequest('?tag=' . $menu2Tag)->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
);
$res = $this->getRequest('?tag=' . $menu2Tag)->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
$req = $this->getRequest('?unittestMode=1');
$res = $req->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
$this->assertEquals(2, count($data));
$req = $this->getRequest('?unittestMode=1&beginsWith=foo');
$res = $req->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
$data = json_decode($res->getBody());
+ $this->assertResponseJson200($res);
$this->assertInternalType('array', $data);
$this->assertEquals(2, count($data));
$this->assertContains('foo', $data);
$req = $this->getRequest('?unittestMode=1&limit=1');
$res = $req->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
$this->assertEquals(1, count($data));
$req = $this->getRequest('?unittestMode=1&limit=2');
$res = $req->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
$this->assertEquals(2, count($data));
$req = $this->getRequest('?unittestMode=1&limit=3');
$res = $req->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
$this->assertEquals(3, count($data));
public function testNoUserLoggedIn()
{
$res = $this->getRequest()->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
$this->assertEquals(0, count($data));
$this->addBookmark($user2, null, 0, array('user2tag'));
$res = $req->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
$this->assertEquals(3, count($data));
$this->addBookmark($uId, null, 0, array('foobar', 'barmann'));
$res = $req->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
$this->assertEquals(1, count($data));
$this->addBookmark($uId, null, 0, array('foo', 'bar', 'baz', 'omg'));
$res = $req->send();
- $this->assertEquals(200, $res->getStatus());
- $this->assertEquals(
- 'application/json; charset=utf-8',
- $res->getHeader('content-type')
- );
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
$this->assertEquals(2, count($data));
$req2 = $this->getRequest('?limit=3');
$req2->setCookieJar($req->getCookieJar());
$res = $req2->send();
- $this->assertEquals(200, $res->getStatus());
+ $this->assertResponseJson200($res);
$data = json_decode($res->getBody());
$this->assertInternalType('array', $data);
$this->assertEquals(3, count($data));