Skip to content

Commit 35b1773

Browse files
felixuref3l1x
authored andcommitted
Tests: add Fly components coverage
1 parent 3d2aed7 commit 35b1773

File tree

2 files changed

+76
-0
lines changed

2 files changed

+76
-0
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<?php declare(strict_types = 1);
2+
3+
use Contributte\Application\Response\Fly\Adapter\CallbackAdapter;
4+
use Contributte\Tester\Toolkit;
5+
use Nette\Http\IRequest;
6+
use Nette\Http\IResponse;
7+
use Nette\Http\Request;
8+
use Nette\Http\Response;
9+
use Nette\Http\UrlScript;
10+
use Tester\Assert;
11+
12+
require_once __DIR__ . '/../../../../bootstrap.php';
13+
14+
Toolkit::test(function (): void {
15+
$state = new stdClass();
16+
$state->receivedRequest = null;
17+
$state->receivedResponse = null;
18+
19+
$adapter = new CallbackAdapter(function (IRequest $request, IResponse $response) use ($state): void {
20+
$state->receivedRequest = $request;
21+
$state->receivedResponse = $response;
22+
});
23+
24+
$request = new Request(new UrlScript());
25+
$response = new Response();
26+
27+
$adapter->send($request, $response);
28+
29+
Assert::same($request, $state->receivedRequest);
30+
Assert::same($response, $state->receivedResponse);
31+
});
32+
33+
Toolkit::test(function (): void {
34+
$state = new stdClass();
35+
$state->output = '';
36+
37+
$adapter = new CallbackAdapter(function () use ($state): void {
38+
$state->output = 'executed';
39+
});
40+
41+
$adapter->send(new Request(new UrlScript()), new Response());
42+
43+
Assert::same('executed', $state->output);
44+
});
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<?php declare(strict_types = 1);
2+
3+
use Contributte\Application\Response\Fly\Adapter\CallbackAdapter;
4+
use Contributte\Application\Response\Fly\FlyResponse;
5+
use Contributte\Tester\Toolkit;
6+
use Nette\Http\IRequest;
7+
use Nette\Http\IResponse;
8+
use Nette\Http\Request;
9+
use Nette\Http\Response;
10+
use Nette\Http\UrlScript;
11+
use Tester\Assert;
12+
13+
require_once __DIR__ . '/../../../bootstrap.php';
14+
15+
Toolkit::test(function (): void {
16+
$state = new stdClass();
17+
$state->called = false;
18+
19+
$adapter = new CallbackAdapter(function (IRequest $request, IResponse $response) use ($state): void {
20+
$state->called = true;
21+
echo 'callback output';
22+
});
23+
24+
$flyResponse = new FlyResponse($adapter);
25+
26+
ob_start();
27+
$flyResponse->send(new Request(new UrlScript()), new Response());
28+
$output = ob_get_clean();
29+
30+
Assert::true($state->called);
31+
Assert::same('callback output', $output);
32+
});

0 commit comments

Comments
 (0)