function EntityResourceTest::testGetEmptyCollection

Same name and namespace in other branches
  1. 8.9.x core/modules/jsonapi/tests/src/Kernel/Controller/EntityResourceTest.php \Drupal\Tests\jsonapi\Kernel\Controller\EntityResourceTest::testGetEmptyCollection()
  2. 10 core/modules/jsonapi/tests/src/Kernel/Controller/EntityResourceTest.php \Drupal\Tests\jsonapi\Kernel\Controller\EntityResourceTest::testGetEmptyCollection()
  3. 11.x core/modules/jsonapi/tests/src/Kernel/Controller/EntityResourceTest.php \Drupal\Tests\jsonapi\Kernel\Controller\EntityResourceTest::testGetEmptyCollection()

@covers ::getCollection

File

core/modules/jsonapi/tests/src/Kernel/Controller/EntityResourceTest.php, line 224

Class

EntityResourceTest
@coversDefaultClass <a href="/api/drupal/core%21modules%21jsonapi%21src%21Controller%21EntityResource.php/class/EntityResource/9" title="Process all entity requests." class="local">\Drupal\jsonapi\Controller\EntityResource</a> @group jsonapi

Namespace

Drupal\Tests\jsonapi\Kernel\Controller

Code

public function testGetEmptyCollection() {
    $request = Request::create('/jsonapi/node/article');
    $request->query = new ParameterBag([
        'filter' => [
            'id' => 'invalid',
        ],
    ]);
    // Get the response.
    $resource_type = new ResourceType('node', 'article', NULL);
    $response = $this->entityResource
        ->getCollection($resource_type, $request);
    // Assertions.
    $this->assertInstanceOf(CacheableResourceResponse::class, $response);
    $this->assertInstanceOf(JsonApiDocumentTopLevel::class, $response->getResponseData());
    $this->assertInstanceOf(Data::class, $response->getResponseData()
        ->getData());
    $this->assertEquals(0, $response->getResponseData()
        ->getData()
        ->count());
    $this->assertEquals([
        'node_list',
    ], $response->getCacheableMetadata()
        ->getCacheTags());
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.