namespace Shaarli\Front\Controller\Visitor;
-use PHPUnit\Framework\TestCase;
use Shaarli\Bookmark\BookmarkFilter;
+use Shaarli\TestCase;
use Slim\Http\Request;
use Slim\Http\Response;
*/
public function testValidCloudControllerInvokeDefault(): void
{
- $this->createValidContainerMockSet();
-
$allTags = [
'ghi' => 1,
'abc' => 3,
// Make sure that PluginManager hook is triggered
$this->container->pluginManager
- ->expects(static::at(0))
+ ->expects(static::atLeastOnce())
->method('executeHooks')
+ ->withConsecutive(['render_tagcloud'])
->willReturnCallback(function (string $hook, array $data, array $param): array {
- static::assertSame('render_tagcloud', $hook);
- static::assertSame('', $data['search_tags']);
- static::assertCount(3, $data['tags']);
+ if ('render_tagcloud' === $hook) {
+ static::assertSame('', $data['search_tags']);
+ static::assertCount(3, $data['tags']);
- static::assertArrayHasKey('loggedin', $param);
+ static::assertArrayHasKey('loggedin', $param);
+ }
return $data;
})
*/
public function testValidCloudControllerInvokeWithParameters(): void
{
- $this->createValidContainerMockSet();
-
$request = $this->createMock(Request::class);
$request
->method('getQueryParam')
->with()
->willReturnCallback(function (string $key): ?string {
if ('searchtags' === $key) {
- return 'ghi def';
+ return 'ghi@def';
}
return null;
// Make sure that PluginManager hook is triggered
$this->container->pluginManager
- ->expects(static::at(0))
+ ->expects(static::atLeastOnce())
->method('executeHooks')
+ ->withConsecutive(['render_tagcloud'])
->willReturnCallback(function (string $hook, array $data, array $param): array {
- static::assertSame('render_tagcloud', $hook);
- static::assertSame('ghi def', $data['search_tags']);
- static::assertCount(1, $data['tags']);
+ if ('render_tagcloud' === $hook) {
+ static::assertSame('ghi@def@', $data['search_tags']);
+ static::assertCount(1, $data['tags']);
- static::assertArrayHasKey('loggedin', $param);
+ static::assertArrayHasKey('loggedin', $param);
+ }
return $data;
})
static::assertSame('tag.cloud', (string) $result->getBody());
static::assertSame('ghi def - Tag cloud - Shaarli', $assignedVariables['pagetitle']);
- static::assertSame('ghi def', $assignedVariables['search_tags']);
+ static::assertSame('ghi@def@', $assignedVariables['search_tags']);
static::assertCount(1, $assignedVariables['tags']);
static::assertArrayHasKey('abc', $assignedVariables['tags']);
*/
public function testEmptyCloud(): void
{
- $this->createValidContainerMockSet();
-
$request = $this->createMock(Request::class);
$response = new Response();
// Make sure that PluginManager hook is triggered
$this->container->pluginManager
- ->expects(static::at(0))
+ ->expects(static::atLeastOnce())
->method('executeHooks')
+ ->withConsecutive(['render_tagcloud'])
->willReturnCallback(function (string $hook, array $data, array $param): array {
- static::assertSame('render_tagcloud', $hook);
- static::assertSame('', $data['search_tags']);
- static::assertCount(0, $data['tags']);
+ if ('render_tagcloud' === $hook) {
+ static::assertSame('', $data['search_tags']);
+ static::assertCount(0, $data['tags']);
- static::assertArrayHasKey('loggedin', $param);
+ static::assertArrayHasKey('loggedin', $param);
+ }
return $data;
})
*/
public function testValidListControllerInvokeDefault(): void
{
- $this->createValidContainerMockSet();
-
$allTags = [
'def' => 12,
'abc' => 3,
// Make sure that PluginManager hook is triggered
$this->container->pluginManager
- ->expects(static::at(0))
+ ->expects(static::atLeastOnce())
->method('executeHooks')
+ ->withConsecutive(['render_taglist'])
->willReturnCallback(function (string $hook, array $data, array $param): array {
- static::assertSame('render_taglist', $hook);
- static::assertSame('', $data['search_tags']);
- static::assertCount(3, $data['tags']);
+ if ('render_taglist' === $hook) {
+ static::assertSame('', $data['search_tags']);
+ static::assertCount(3, $data['tags']);
- static::assertArrayHasKey('loggedin', $param);
+ static::assertArrayHasKey('loggedin', $param);
+ }
return $data;
})
*/
public function testValidListControllerInvokeWithParameters(): void
{
- $this->createValidContainerMockSet();
-
$request = $this->createMock(Request::class);
$request
->method('getQueryParam')
->with()
->willReturnCallback(function (string $key): ?string {
if ('searchtags' === $key) {
- return 'ghi def';
+ return 'ghi@def';
} elseif ('sort' === $key) {
return 'alpha';
}
// Make sure that PluginManager hook is triggered
$this->container->pluginManager
- ->expects(static::at(0))
+ ->expects(static::atLeastOnce())
->method('executeHooks')
+ ->withConsecutive(['render_taglist'])
->willReturnCallback(function (string $hook, array $data, array $param): array {
- static::assertSame('render_taglist', $hook);
- static::assertSame('ghi def', $data['search_tags']);
- static::assertCount(1, $data['tags']);
+ if ('render_taglist' === $hook) {
+ static::assertSame('ghi@def@', $data['search_tags']);
+ static::assertCount(1, $data['tags']);
- static::assertArrayHasKey('loggedin', $param);
+ static::assertArrayHasKey('loggedin', $param);
+ }
return $data;
})
static::assertSame('tag.list', (string) $result->getBody());
static::assertSame('ghi def - Tag list - Shaarli', $assignedVariables['pagetitle']);
- static::assertSame('ghi def', $assignedVariables['search_tags']);
+ static::assertSame('ghi@def@', $assignedVariables['search_tags']);
static::assertCount(1, $assignedVariables['tags']);
static::assertSame(3, $assignedVariables['tags']['abc']);
}
*/
public function testEmptyList(): void
{
- $this->createValidContainerMockSet();
-
$request = $this->createMock(Request::class);
$response = new Response();
// Make sure that PluginManager hook is triggered
$this->container->pluginManager
- ->expects(static::at(0))
+ ->expects(static::atLeastOnce())
->method('executeHooks')
+ ->withConsecutive(['render_taglist'])
->willReturnCallback(function (string $hook, array $data, array $param): array {
- static::assertSame('render_taglist', $hook);
- static::assertSame('', $data['search_tags']);
- static::assertCount(0, $data['tags']);
+ if ('render_taglist' === $hook) {
+ static::assertSame('', $data['search_tags']);
+ static::assertCount(0, $data['tags']);
- static::assertArrayHasKey('loggedin', $param);
+ static::assertArrayHasKey('loggedin', $param);
+ }
return $data;
})