public function testCanPrepareResponse()
{
$service = $this->createService();
elgg_set_http_header('X-Elgg-Testing: 1');
elgg_set_http_header('X-Elgg-Testing:2');
elgg_set_http_header('content-type: text/html;charset=utf-8');
elgg_set_http_header('Content-Type: application/json;charset=utf-8');
elgg_set_http_header('X-Elgg-Override: 1');
$content = json_encode(['foo' => 'bar']);
$status_code = ELGG_HTTP_NOT_FOUND;
$headers = ['X-Elgg-Response' => true, 'X-Elgg-Override' => '2'];
$response = $service->prepareResponse($content, $status_code, $headers);
$this->assertInstanceOf(Response::class, $response);
$this->assertEquals($content, $response->getContent());
$this->assertEquals($status_code, $response->getStatusCode());
$this->assertTrue($response->headers->get('X-Elgg-Response'));
$this->assertEquals('2', $response->headers->get('X-Elgg-Testing'));
$this->assertEquals('application/json;charset=utf-8', $response->headers->get('Content-Type'));
$this->assertEquals('2', $response->headers->get('X-Elgg-Override'));
}