From 8128af799a4577353f1502acaabc71bd298529a3 Mon Sep 17 00:00:00 2001
From: Matt Bonneau <matt@bonneau.net>
Date: Tue, 12 Sep 2017 22:33:33 -0400
Subject: [PATCH] Fix requested changes on PR

---
 .travis.yml                                   |  2 +-
 src/Handshake/ServerNegotiator.php            | 16 ++--------------
 tests/unit/Handshake/ServerNegotiatorTest.php |  2 +-
 3 files changed, 4 insertions(+), 16 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b45fd6e..11d51b4 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -17,4 +17,4 @@ before_script:
     - sh tests/ab/run_ab_tests.sh
 
 script:
-    - phpunit
+    - vendor/bin/phpunit
diff --git a/src/Handshake/ServerNegotiator.php b/src/Handshake/ServerNegotiator.php
index 2ebdf6b..7e1e99d 100644
--- a/src/Handshake/ServerNegotiator.php
+++ b/src/Handshake/ServerNegotiator.php
@@ -62,13 +62,7 @@ class ServerNegotiator implements NegotiatorInterface {
             'Sec-WebSocket-Protocol' => implode(', ', $this->_supportedSubProtocols)
         ];
         if (true !== $this->verifier->verifyUpgradeRequest($request->getHeader('Upgrade'))) {
-            return new Response(
-                426,
-                $upgradeSuggestion,
-                null,
-                '1.1',
-                'Upgrade header MUST be provided'
-            );
+            return new Response(426, $upgradeSuggestion, null, '1.1', 'Upgrade header MUST be provided');
         }
 
         if (true !== $this->verifier->verifyConnection($request->getHeader('Connection'))) {
@@ -80,12 +74,6 @@ class ServerNegotiator implements NegotiatorInterface {
         }
 
         if (true !== $this->verifier->verifyVersion($request->getHeader('Sec-WebSocket-Version'))) {
-            /*
-             * https://tools.ietf.org/html/rfc7230#section-6.7
-             * A server that sends a 426 (Upgrade Required) response MUST send an
-             * Upgrade header field to indicate the acceptable protocols, in order
-             * of descending preference
-             */
             return new Response(426, $upgradeSuggestion);
         }
 
@@ -99,7 +87,7 @@ class ServerNegotiator implements NegotiatorInterface {
             }, null);
 
             if ($this->_strictSubProtocols && null === $match) {
-                return new Response(426, $upgradeSuggestion);
+                return new Response(426, $upgradeSuggestion, null, '1.1', 'No Sec-WebSocket-Protocols requested supported');
             }
 
             if (null !== $match) {
diff --git a/tests/unit/Handshake/ServerNegotiatorTest.php b/tests/unit/Handshake/ServerNegotiatorTest.php
index 94d9add..4edfff3 100644
--- a/tests/unit/Handshake/ServerNegotiatorTest.php
+++ b/tests/unit/Handshake/ServerNegotiatorTest.php
@@ -136,7 +136,7 @@ Accept-Language: en-US,en;q=0.8';
 
         $this->assertEquals('1.1', $response->getProtocolVersion());
         $this->assertEquals(426, $response->getStatusCode());
-        $this->assertEquals('Upgrade Required', $response->getReasonPhrase());
+        $this->assertEquals('No Sec-WebSocket-Protocols requested supported', $response->getReasonPhrase());
         $this->assertEquals('Upgrade', $response->getHeaderLine('Connection'));
         $this->assertEquals('websocket', $response->getHeaderLine('Upgrade'));
         $this->assertEquals('13', $response->getHeaderLine('Sec-WebSocket-Version'));