createDbiDummy(); DatabaseInterface::$instance = $this->createDatabaseInterface($dbiDummy); $dbiDummy->addResult('SELECT 1 FROM `test_db`.`test_table` LIMIT 1;', [['1']]); $config = new Config(); $config->settings['NumRecentTables'] = 10; $request = ServerRequestFactory::create()->createServerRequest('GET', 'https://example.com/') ->withQueryParams(['db' => 'test_db', 'table' => 'test_table']); $response = ResponseFactory::create()->createResponse(); $handler = self::createMock(RequestHandlerInterface::class); $handler->method('handle')->with($request)->willReturn($response); $reflectionProperty = new ReflectionProperty(RecentFavoriteTables::class, 'instances'); $reflectionProperty->setValue(null, []); $recentTables = RecentFavoriteTables::getInstance(TableType::Recent); self::assertSame([], $recentTables->getTables()); $actualResponse = (new RecentTableHandling($config))->process($request, $handler); self::assertSame($response, $actualResponse); self::assertSame('', (string) $actualResponse->getBody()); self::assertEquals( [new RecentFavoriteTable(DatabaseName::from('test_db'), TableName::from('test_table'))], $recentTables->getTables(), ); $dbiDummy->assertAllQueriesConsumed(); $reflectionProperty->setValue(null, []); } }