2 declare(strict_types = 1);
19 use Psr\Http\Message\ServerRequestInterface;
22 use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
35 'loc' =>
'https://yourdomain.com/page-1',
36 'lastMod' => 1535655601
39 'loc' =>
'https://yourdomain.com/page-2',
40 'lastMod' => 1530432000
43 'loc' =>
'https://yourdomain.com/page-3',
44 'lastMod' => 1535655756
47 'loc' =>
'https://yourdomain.com/page-4',
48 'lastMod' => 1530432001
59 $cObj = $this->prophesize(ContentObjectRenderer::class);
61 $subject = $this->getAccessibleMock(
62 PagesXmlSitemapDataProvider::class,
64 [$this->prophesize(ServerRequestInterface::class)->reveal(), $key, [], $cObj->reveal()],
68 $subject->expects($this->any())->method(
'generateItems')->willReturn(
null);
69 $this->assertEquals($key, $subject->getKey());
79 $cObj = $this->prophesize(ContentObjectRenderer::class);
81 $subject = $this->getAccessibleMock(
82 PagesXmlSitemapDataProvider::class,
83 [
'generateItems',
'defineUrl'],
84 [$this->prophesize(ServerRequestInterface::class)->reveal(), $key, [], $cObj->reveal()],
88 $subject->_set(
'request', $this->prophesize(ServerRequestInterface::class)->reveal());
89 $subject->_set(
'items', $this->items);
90 $subject->_set(
'numberOfItemsPerPage', $numberOfItemsPerPage);
92 $subject->expects($this->any())->method(
'defineUrl')->will(
93 $this->returnCallback(
100 $returnedItems = $subject->getItems();
101 $expectedReturnedItems = array_slice($this->items, 0, $numberOfItemsPerPage);
103 $this->assertLessThanOrEqual($numberOfItemsPerPage, count($returnedItems));
105 $this->assertEquals($expectedReturnedItems, $returnedItems);
114 $cObj = $this->prophesize(ContentObjectRenderer::class);
116 $subject = $this->getAccessibleMock(
117 PagesXmlSitemapDataProvider::class,
119 [$this->prophesize(ServerRequestInterface::class)->reveal(), $key, [], $cObj->reveal()],
124 $subject->_set(
'items', $this->items);
126 $this->assertEquals(1535655756, $subject->getLastModified());
135 '1 items per page' => [1],
136 '3 items per page' => [3],
137 '100 items per page' => [100],