@@ -27,6 +27,30 @@ public function testEmitsConnectionForNewConnection()
27
27
$ server = new SecureServer ($ server , $ loop , array (
28
28
'local_cert ' => __DIR__ . '/../examples/localhost.pem '
29
29
));
30
+ $ server ->on ('error ' , 'var_dump ' );
31
+ $ server ->on ('connection ' , $ this ->expectCallableOnce ());
32
+ $ server ->listen (0 );
33
+ $ port = $ server ->getPort ();
34
+
35
+ $ connector = new SecureConnector (new TcpConnector ($ loop ), $ loop , array (
36
+ 'verify_peer ' => false
37
+ ));
38
+ $ promise = $ connector ->create ('127.0.0.1 ' , $ port );
39
+
40
+ $ promise ->then ($ this ->expectCallableOnce ());
41
+
42
+ Block \sleep (0.1 , $ loop );
43
+ }
44
+
45
+ public function testEmitsConnectionForNewConnectionWithEncryptedCertificate ()
46
+ {
47
+ $ loop = Factory::create ();
48
+
49
+ $ server = new Server ($ loop );
50
+ $ server = new SecureServer ($ server , $ loop , array (
51
+ 'local_cert ' => __DIR__ . '/../examples/localhost_swordfish.pem ' ,
52
+ 'passphrase ' => 'swordfish '
53
+ ));
30
54
$ server ->on ('connection ' , $ this ->expectCallableOnce ());
31
55
$ server ->listen (0 );
32
56
$ port = $ server ->getPort ();
@@ -64,6 +88,53 @@ public function testEmitsErrorForServerWithInvalidCertificate()
64
88
Block \sleep (0.1 , $ loop );
65
89
}
66
90
91
+ public function testEmitsErrorForServerWithEncryptedCertificateMissingPassphrase ()
92
+ {
93
+ $ loop = Factory::create ();
94
+
95
+ $ server = new Server ($ loop );
96
+ $ server = new SecureServer ($ server , $ loop , array (
97
+ 'local_cert ' => __DIR__ . '/../examples/localhost_swordfish.pem '
98
+ ));
99
+ $ server ->on ('connection ' , $ this ->expectCallableNever ());
100
+ $ server ->on ('error ' , $ this ->expectCallableOnce ());
101
+ $ server ->listen (0 );
102
+ $ port = $ server ->getPort ();
103
+
104
+ $ connector = new SecureConnector (new TcpConnector ($ loop ), $ loop , array (
105
+ 'verify_peer ' => false
106
+ ));
107
+ $ promise = $ connector ->create ('127.0.0.1 ' , $ port );
108
+
109
+ $ promise ->then (null , $ this ->expectCallableOnce ());
110
+
111
+ Block \sleep (0.1 , $ loop );
112
+ }
113
+
114
+ public function testEmitsErrorForServerWithEncryptedCertificateWithInvalidPassphrase ()
115
+ {
116
+ $ loop = Factory::create ();
117
+
118
+ $ server = new Server ($ loop );
119
+ $ server = new SecureServer ($ server , $ loop , array (
120
+ 'local_cert ' => __DIR__ . '/../examples/localhost_swordfish.pem ' ,
121
+ 'passphrase ' => 'nope '
122
+ ));
123
+ $ server ->on ('connection ' , $ this ->expectCallableNever ());
124
+ $ server ->on ('error ' , $ this ->expectCallableOnce ());
125
+ $ server ->listen (0 );
126
+ $ port = $ server ->getPort ();
127
+
128
+ $ connector = new SecureConnector (new TcpConnector ($ loop ), $ loop , array (
129
+ 'verify_peer ' => false
130
+ ));
131
+ $ promise = $ connector ->create ('127.0.0.1 ' , $ port );
132
+
133
+ $ promise ->then (null , $ this ->expectCallableOnce ());
134
+
135
+ Block \sleep (0.1 , $ loop );
136
+ }
137
+
67
138
public function testEmitsErrorForConnectionWithPeerVerification ()
68
139
{
69
140
$ loop = Factory::create ();
0 commit comments