createServerRequest('GET', 'http://example.com/') ->withParsedBody(['db' => 'test_db', 'table' => 'test_table']); $dbi = $this->createDatabaseInterface(); $responseRenderer = new ResponseRenderer(); $controller = new ColumnController($responseRenderer, new Template(new Config()), $dbi); $controller($request); self::assertTrue($responseRenderer->hasSuccessState()); self::assertSame('', $responseRenderer->getHTMLResult()); self::assertSame(['columns' => ['id', 'name', 'datetimefield']], $responseRenderer->getJSONResult()); } public function testWithMissingParameters(): void { $request = ServerRequestFactory::create()->createServerRequest('GET', 'http://example.com/'); $dbi = $this->createDatabaseInterface(); $responseRenderer = new ResponseRenderer(); $controller = new ColumnController($responseRenderer, new Template(new Config()), $dbi); $controller($request); self::assertFalse($responseRenderer->hasSuccessState()); self::assertSame('', $responseRenderer->getHTMLResult()); self::assertSame(['message' => Message::error()->getDisplay()], $responseRenderer->getJSONResult()); } }