-
Notifications
You must be signed in to change notification settings - Fork 17
/
NoopCommandConnectivityCheckerTest.php
62 lines (51 loc) · 1.56 KB
/
NoopCommandConnectivityCheckerTest.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
declare(strict_types=1);
namespace League\Flysystem\Ftp;
use League\Flysystem\AdapterTestUtilities\RetryOnTestException;
use PHPUnit\Framework\TestCase;
/**
* @group ftp
*/
class NoopCommandConnectivityCheckerTest extends TestCase
{
use RetryOnTestException;
protected function setUp(): void
{
$this->retryOnException(UnableToConnectToFtpHost::class);
}
/**
* @test
*/
public function detecting_a_good_connection(): void
{
$options = FtpConnectionOptions::fromArray([
'host' => 'localhost',
'port' => 2121,
'root' => '/home/foo/upload',
'username' => 'foo',
'password' => 'pass',
]);
$connection = (new FtpConnectionProvider())->createConnection($options);
$connected = (new NoopCommandConnectivityChecker())->isConnected($connection);
$this->assertTrue($connected);
}
/**
* @test
*/
public function detecting_a_closed_connection(): void
{
$options = FtpConnectionOptions::fromArray([
'host' => 'localhost',
'port' => 2121,
'root' => '/home/foo/upload',
'username' => 'foo',
'password' => 'pass',
]);
$this->runScenario(function () use ($options) {
$connection = (new FtpConnectionProvider())->createConnection($options);
ftp_close($connection);
$connected = (new NoopCommandConnectivityChecker())->isConnected($connection);
$this->assertFalse($connected);
});
}
}