createDbiDummy(); $dbiDummy->addSelectDb('test_db'); $dbiDummy->addResult('SHOW TABLES FROM `test_db`;', [['test_table']], ['Tables_in_test_db']); $request = ServerRequestFactory::create()->createServerRequest('GET', 'https://example.com/') ->withQueryParams(['route' => '/database/search', 'db' => 'test_db']); $response = ($this->getSearchController($dbiDummy))($request); $dbiDummy->assertAllSelectsConsumed(); $dbiDummy->assertAllQueriesConsumed(); self::assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); self::assertStringEqualsFile( __DIR__ . '/Fixtures/Search-testController.html', (string) $response->getBody(), ); } private function getSearchController(DbiDummy $dbiDummy): SearchController { $config = new Config(); $dbi = $this->createDatabaseInterface($dbiDummy, $config); return new SearchController( new ResponseRenderer(), new Template($config), $dbi, new DbTableExists($dbi), $config, ); } }