HEX
Server: Apache
System: Linux s198.coreserver.jp 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC 2025 x86_64
User: nagasaki (10062)
PHP: 7.1.33
Disabled: NONE
Upload Files
File: /virtual/nagasaki/public_html/ec/vendor/silex/silex/tests/Silex/Tests/JsonTest.php
<?php

/*
 * This file is part of the Silex framework.
 *
 * (c) Fabien Potencier <fabien@symfony.com>
 *
 * This source file is subject to the MIT license that is bundled
 * with this source code in the file LICENSE.
 */

namespace Silex\Tests;

use Silex\Application;

/**
 * JSON test cases.
 *
 * @author Igor Wiedler <igor@wiedler.ch>
 */
class JsonTest extends \PHPUnit_Framework_TestCase
{
    public function testJsonReturnsJsonResponse()
    {
        $app = new Application();

        $response = $app->json();
        $this->assertInstanceOf('Symfony\Component\HttpFoundation\JsonResponse', $response);
        $response = json_decode($response->getContent(), true);
        $this->assertSame(array(), $response);
    }

    public function testJsonUsesData()
    {
        $app = new Application();

        $response = $app->json(array('foo' => 'bar'));
        $this->assertSame('{"foo":"bar"}', $response->getContent());
    }

    public function testJsonUsesStatus()
    {
        $app = new Application();

        $response = $app->json(array(), 202);
        $this->assertSame(202, $response->getStatusCode());
    }

    public function testJsonUsesHeaders()
    {
        $app = new Application();

        $response = $app->json(array(), 200, array('ETag' => 'foo'));
        $this->assertSame('foo', $response->headers->get('ETag'));
    }
}