{
  "ua": [
    "Ed18"
  ],
  "results": {
    "/websockets/interfaces/WebSocket/events/002.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: setting on*": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: setting on* 1": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: setting on* 2": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: setting on* 3": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/keeping-connection-open/001.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: 20s inactivity after handshake": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_unreached: Reached unreachable code"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/Create-non-absolute-url.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Create WebSocket - Pass a non absolute URL - SYNTAX_ERR is thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/005.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: send() return value": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Create-verify-url-set-non-default-port.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Create WebSocket - wsocket.url should be set correctly": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/readyState/005.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: defineProperty setter for readyState": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/constructor/001.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: new WebSocket() with no args": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/018.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "open event": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "message event": {
          "stNum": 1,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "error event": {
          "stNum": 2,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "close event": {
          "stNum": 3,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/opening-handshake/003.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: origin": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_unreached: Reached unreachable code"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/close/close-connecting.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: close() when connecting": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_equals: expected 2 but got 0"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-Reason-124Bytes.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(code, 'reason more than 123 bytes') - SYNTAX_ERR is thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Create-nonAscii-protocol-string.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Create WebSocket - Pass a valid URL and a protocol string with non-ascii values - SYNTAX_ERR is thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: function \"function () {\n    wsocket = CreateWebSocketNonAsciiProtocol(nonAsciiProtocol)\n  }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/Create-Secure-valid-url.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Pass a valid URL  - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Pass a valid URL - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/006.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: send() with unpaired surrogate when readyState is OPEN": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/cookies/001.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: Cookie in request": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/url/001.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: getting url": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/binary/001.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: Send/Receive blob, blob size less than network array buffer": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Create-Secure-verify-url-set-non-default-port.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Create Secure WebSocket - wsocket.url should be set correctly": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/cookies/005.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: setting HttpOnly cookies in ws response, checking ws request": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_unreached: error Reached unreachable code"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-binary-arraybufferview-float64.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - ArrayBufferView - Float64Array - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Float64Array - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Float64Array - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/cookies/006.https.html?wss": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "undefined": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {},
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-Reason-Unpaired-surrogates.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/readyState/002.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: setting readyState": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/constructor/005.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: return value": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/unload-a-document/005.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: navigating nested browsing context with a websocket in top-level": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/close/close-replace.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: replacing close": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-binary-blob.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a Secure WebSocket - Blob - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a Secure WebSocket - Blob - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a Secure WebSocket - Blob - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-1005.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(1005) - see '7.1.5.  The WebSocket Connection Close Code' in http://www.ietf.org/rfc/rfc6455.txt": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Create-Secure-valid-url-protocol-setCorrectly.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Pass a valid URL and protocol string - protocol should be set correctly - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Pass a valid URL and protocol string - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Send-binary-arraybuffer.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - ArrayBuffer - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBuffer - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBuffer - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/url/002.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: setting url": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-deleting.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: delete bufferedAmount": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Create-Secure-valid-url-protocol-string.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Check readyState is 1": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Pass a valid URL and protocol string - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-onlyReason.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(only reason) - INVALID_ACCESS_ERR is thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/constants/002.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Readonly constants CONNECTING": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Readonly constants OPEN": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Readonly constants CLOSING": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Readonly constants CLOSED": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-blob.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: bufferedAmount for blob": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/007.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: close() followed by send()": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Close-1000-reason.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create WebSocket - Close the Connection - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create WebSocket - Close the Connection - close(1000, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Create-on-worker-shutdown.any.html": {
      "byUA": {
        "Ed18": "ERROR"
      },
      "UAmessage": {
        "Ed18": "SecurityError"
      },
      "totals": {
        "ERROR": 1
      },
      "subtests": {
        "WebSocket created after a worker self.close()": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Create-protocol-with-space.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "undefined": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {},
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-defineProperty-setter.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: defineProperty setter for bufferedAmount": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/extended-payload-length.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Application data is 125 byte which means any 'Extended payload length' field isn't used at all.": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "Application data is 126 byte which starts to use the 16 bit 'Extended payload length' field.": {
          "stNum": 1,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "Application data is 0xFFFF byte which means the upper bound of the 16 bit 'Extended payload length' field.": {
          "stNum": 2,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "Application data is (0xFFFF + 1) byte which starts to use the 64 bit 'Extended payload length' field": {
          "stNum": 3,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-binary-arraybuffer.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a Secure WebSocket - ArrayBuffer - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a Secure WebSocket - ArrayBuffer - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a Secure WebSocket - ArrayBuffer - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/protocol/protocol-initial.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: getting protocol in connecting": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/security/001.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: wrong accept key": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-binary-arraybufferview-float32.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - ArrayBufferView - Float32Array - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Float32Array - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Float32Array - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/constants/003.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: deleting constants": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: deleting constants 1": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: deleting constants 2": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: deleting constants 3": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-1000-reason.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(1000, reason) - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Close the Connection - close(1000, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Create-valid-url-protocol-empty.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Create WebSocket - wsocket.protocol should be empty before connection is established": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-1005-verify-code.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close() - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Close the Connection - close() - return close code is 1005 - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/006.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: 'on*' in ws": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/bufferedAmount-unchanged-by-sync-xhr.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "bufferedAmount should not be updated during a sync XHR": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/019.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: removeEventListener": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: removeEventListener 1": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: removeEventListener 2": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: removeEventListener 3": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/binary/004.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: Send/Receive ArrayBuffer, size greater than network array buffer": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Create-wrong-scheme.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Create WebSocket - Pass a URL with a non ws/wss scheme - SYNTAX_ERR is thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/constructor/021.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: Same sub protocol twice": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: function \"function (){new WebSocket(\"ws://certo2.oslo.osa/protocol_array\",[\"foobar, foobar\"])}\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/extensions/001.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: getting extensions in connecting": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Create-protocols-repeated.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Create WebSocket - Pass a valid URL and an array of protocol strings with repeated values - SYNTAX_ERR is thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: function \"function () {\n    wsocket = CreateWebSocketWithRepeatedProtocols()\n  }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/readyState/006.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: getting readyState in open": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/011.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "onclose": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "onopen": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "onerror": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "onmessage": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/binary/005.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: Send/Receive ArrayBuffer, size less than network array buffer": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/004.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "lone low surrogate": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "lone high surrogate": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "surrogates in wrong order": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/constructor/020.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: uppercase host": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/constants/001.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Constants on constructors CONNECTING": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Constants on constructors OPEN": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Constants on constructors CLOSING": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Constants on constructors CLOSED": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/multi-globals/message-received.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "ArrayBuffer should be created in the relevant realm of the WebSocket": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "Blob should be created in the relevant realm of the WebSocket": {
          "stNum": 1,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/012.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: sending null": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Send-binary-blob.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - Blob - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - Blob - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - Blob - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-initial.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: getting bufferedAmount": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/opening-handshake/005.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: proper first line": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/003.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: send() when readyState is CONNECTING": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Send-null.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send null data on a WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send null data on a WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send null data on a WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/readyState/001.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: getting readyState in connecting": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset and length - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset and length - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset and length - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/opening-handshake/003-sets-origin.worker.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "origin set in a Worker": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-3000-reason.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(3000, reason) - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Close the Connection - close(3000, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-readonly.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: setting bufferedAmount": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/opening-handshake/001.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: invalid handshake": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-null.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send null data on a Secure WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send null data on a Secure WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send null data on a Secure WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Send-Unpaired-Surrogates.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send unpaired surrogates on a WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send unpaired surrogates on a WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send unpaired surrogates on a WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-binary-arraybufferview-uint32-offset.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - ArrayBufferView - Uint32Array with offset - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Uint32Array with offset - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Uint32Array with offset - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/referrer.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Ensure no Referer header is included": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/constructor/009.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: protocol": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Send-before-open.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Send data on a WebSocket before connection is opened - INVALID_STATE_ERR is returned": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/constants/006.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "defineProperty setter CONNECTING": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "defineProperty setter OPEN": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "defineProperty setter CLOSING": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "defineProperty setter CLOSED": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/010.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Constructor succeeds": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSockets: sending non-strings (null)": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "WebSockets: sending non-strings (undefined)": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "WebSockets: sending non-strings (1)": {
          "stNum": 3,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "WebSockets: sending non-strings ([object Window])": {
          "stNum": 4,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "WebSockets: sending non-strings ([object HTMLBodyElement])": {
          "stNum": 5,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "WebSockets: sending non-strings ([object Object])": {
          "stNum": 6,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "WebSockets: sending non-strings ()": {
          "stNum": 7,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "WebSockets: sending non-strings ([object WebSocket])": {
          "stNum": 8,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "WebSockets: sending non-strings (function (){})": {
          "stNum": 9,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "WebSockets: sending non-strings (Error)": {
          "stNum": 10,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Send-binary-arraybufferview-int16-offset.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - ArrayBufferView - Int16Array with offset - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Int16Array with offset - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Int16Array with offset - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/012.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "onclose": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "onopen": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "onerror": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "onmessage": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-data.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send  data on a Secure WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send data on a Secure WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send data on a Secure WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/001.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: getting on*": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: getting on* 1": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: getting on* 2": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: getting on* 3": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-server-initiated-close.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Server initiated Close - Client sends back a CLOSE - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Server initiated Close - Client sends back a CLOSE - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Create-Secure-extensions-empty.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/eventhandlers.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Event handler for open should have [TreatNonCallableAsNull]": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Event handler for error should have [TreatNonCallableAsNull]": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Event handler for close should have [TreatNonCallableAsNull]": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Event handler for message should have [TreatNonCallableAsNull]": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/unload-a-document/004.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: navigating nested browsing context with closed websocket": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_unreached: Got unexpected event error Reached unreachable code"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/constructor/022.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: protocol array": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Create-blocked-port.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Basic check": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 1": {
          "stNum": 1,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 7": {
          "stNum": 2,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 9": {
          "stNum": 3,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 11": {
          "stNum": 4,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 13": {
          "stNum": 5,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 15": {
          "stNum": 6,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 17": {
          "stNum": 7,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 19": {
          "stNum": 8,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSocket blocked port test 20": {
          "stNum": 9,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 21": {
          "stNum": 10,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSocket blocked port test 22": {
          "stNum": 11,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 23": {
          "stNum": 12,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 25": {
          "stNum": 13,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSocket blocked port test 37": {
          "stNum": 14,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 42": {
          "stNum": 15,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 43": {
          "stNum": 16,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 53": {
          "stNum": 17,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 77": {
          "stNum": 18,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 79": {
          "stNum": 19,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 87": {
          "stNum": 20,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 95": {
          "stNum": 21,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 101": {
          "stNum": 22,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 102": {
          "stNum": 23,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 103": {
          "stNum": 24,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 104": {
          "stNum": 25,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 109": {
          "stNum": 26,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 110": {
          "stNum": 27,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSocket blocked port test 111": {
          "stNum": 28,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 113": {
          "stNum": 29,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 115": {
          "stNum": 30,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 117": {
          "stNum": 31,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 119": {
          "stNum": 32,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSocket blocked port test 123": {
          "stNum": 33,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 135": {
          "stNum": 34,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 139": {
          "stNum": 35,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 143": {
          "stNum": 36,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSocket blocked port test 179": {
          "stNum": 37,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 389": {
          "stNum": 38,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 427": {
          "stNum": 39,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 465": {
          "stNum": 40,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 512": {
          "stNum": 41,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 513": {
          "stNum": 42,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 514": {
          "stNum": 43,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 515": {
          "stNum": 44,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 526": {
          "stNum": 45,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 530": {
          "stNum": 46,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 531": {
          "stNum": 47,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 532": {
          "stNum": 48,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 540": {
          "stNum": 49,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 548": {
          "stNum": 50,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 556": {
          "stNum": 51,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 563": {
          "stNum": 52,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 587": {
          "stNum": 53,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 601": {
          "stNum": 54,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 636": {
          "stNum": 55,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 993": {
          "stNum": 56,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSocket blocked port test 995": {
          "stNum": 57,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 2049": {
          "stNum": 58,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 3659": {
          "stNum": 59,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 4045": {
          "stNum": 60,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 6000": {
          "stNum": 61,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 6665": {
          "stNum": 62,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 6666": {
          "stNum": 63,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 6667": {
          "stNum": 64,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 6668": {
          "stNum": 65,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 6669": {
          "stNum": 66,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        },
        "WebSocket blocked port test 6697": {
          "stNum": 67,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/close/close-nested.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: close() in close event handler": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_equals: expected 2 but got 0"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-1000-verify-code.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(1000, reason) - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Close the Connection - close(1000, reason) - event.code == 1000 and event.reason = 'Clean Close'": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - ArrayBufferView - Uint16Array with offset and length - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Uint16Array with offset and length - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Uint16Array with offset and length - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/closing-handshake/004.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: data after closing handshake": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/constructor/004.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: new WebSocket(url, invalid protocol)": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: function \"function () {\n    new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message', \"\")\n  }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 1": {
          "stNum": 1,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 1 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 2": {
          "stNum": 2,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 2 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 3": {
          "stNum": 3,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 3 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 4": {
          "stNum": 4,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 4 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 5": {
          "stNum": 5,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 5 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 6": {
          "stNum": 6,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 6 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 7": {
          "stNum": 7,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 7 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 8": {
          "stNum": 8,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 8 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 9": {
          "stNum": 9,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 9 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 10": {
          "stNum": 10,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 10 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 11": {
          "stNum": 11,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 11 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 12": {
          "stNum": 12,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 12 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 13": {
          "stNum": 13,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 13 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 14": {
          "stNum": 14,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 14 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 15": {
          "stNum": 15,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 15 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 16": {
          "stNum": 16,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 16 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 17": {
          "stNum": 17,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 17 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 18": {
          "stNum": 18,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 18 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 19": {
          "stNum": 19,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 19 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 20": {
          "stNum": 20,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 20 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 21": {
          "stNum": 21,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 21 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 22": {
          "stNum": 22,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 22 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 23": {
          "stNum": 23,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 23 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 24": {
          "stNum": 24,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 24 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 25": {
          "stNum": 25,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 25 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 26": {
          "stNum": 26,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 26 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 27": {
          "stNum": 27,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 27 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 28": {
          "stNum": 28,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 28 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 29": {
          "stNum": 29,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 29 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 30": {
          "stNum": 30,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 30 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 31": {
          "stNum": 31,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 31 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 32": {
          "stNum": 32,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 127 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 33": {
          "stNum": 33,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 128 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 34": {
          "stNum": 34,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 129 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 35": {
          "stNum": 35,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 130 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 36": {
          "stNum": 36,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 131 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 37": {
          "stNum": 37,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 132 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 38": {
          "stNum": 38,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 133 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 39": {
          "stNum": 39,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 134 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 40": {
          "stNum": 40,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 135 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 41": {
          "stNum": 41,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 136 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 42": {
          "stNum": 42,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 137 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 43": {
          "stNum": 43,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 138 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 44": {
          "stNum": 44,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 139 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 45": {
          "stNum": 45,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 140 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 46": {
          "stNum": 46,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 141 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 47": {
          "stNum": 47,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 142 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 48": {
          "stNum": 48,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 143 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 49": {
          "stNum": 49,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 144 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 50": {
          "stNum": 50,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 145 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 51": {
          "stNum": 51,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 146 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 52": {
          "stNum": 52,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 147 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 53": {
          "stNum": 53,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 148 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 54": {
          "stNum": 54,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 149 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 55": {
          "stNum": 55,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 150 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 56": {
          "stNum": 56,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 151 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 57": {
          "stNum": 57,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 152 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 58": {
          "stNum": 58,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 153 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 59": {
          "stNum": 59,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 154 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 60": {
          "stNum": 60,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 155 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 61": {
          "stNum": 61,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 156 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 62": {
          "stNum": 62,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 157 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 63": {
          "stNum": 63,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 158 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 64": {
          "stNum": 64,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 159 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 65": {
          "stNum": 65,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 160 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 66": {
          "stNum": 66,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 161 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 67": {
          "stNum": 67,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 162 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 68": {
          "stNum": 68,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 163 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 69": {
          "stNum": 69,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 164 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 70": {
          "stNum": 70,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 165 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 71": {
          "stNum": 71,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 166 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 72": {
          "stNum": 72,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 167 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 73": {
          "stNum": 73,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 168 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 74": {
          "stNum": 74,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 169 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 75": {
          "stNum": 75,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 170 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 76": {
          "stNum": 76,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 171 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 77": {
          "stNum": 77,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 172 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 78": {
          "stNum": 78,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 173 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 79": {
          "stNum": 79,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 174 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 80": {
          "stNum": 80,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 175 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 81": {
          "stNum": 81,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 176 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 82": {
          "stNum": 82,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 177 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 83": {
          "stNum": 83,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 178 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 84": {
          "stNum": 84,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 179 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 85": {
          "stNum": 85,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 180 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 86": {
          "stNum": 86,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 181 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 87": {
          "stNum": 87,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 182 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 88": {
          "stNum": 88,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 183 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 89": {
          "stNum": 89,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 184 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 90": {
          "stNum": 90,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 185 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 91": {
          "stNum": 91,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 186 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 92": {
          "stNum": 92,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 187 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 93": {
          "stNum": 93,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 188 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 94": {
          "stNum": 94,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 189 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 95": {
          "stNum": 95,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 190 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 96": {
          "stNum": 96,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 191 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 97": {
          "stNum": 97,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 192 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 98": {
          "stNum": 98,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 193 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 99": {
          "stNum": 99,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 194 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 100": {
          "stNum": 100,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 195 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 101": {
          "stNum": 101,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 196 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 102": {
          "stNum": 102,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 197 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 103": {
          "stNum": 103,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 198 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 104": {
          "stNum": 104,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 199 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 105": {
          "stNum": 105,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 200 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 106": {
          "stNum": 106,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 201 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 107": {
          "stNum": 107,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 202 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 108": {
          "stNum": 108,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 203 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 109": {
          "stNum": 109,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 204 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 110": {
          "stNum": 110,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 205 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 111": {
          "stNum": 111,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 206 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 112": {
          "stNum": 112,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 207 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 113": {
          "stNum": 113,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 208 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 114": {
          "stNum": 114,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 209 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 115": {
          "stNum": 115,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 210 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 116": {
          "stNum": 116,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 211 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 117": {
          "stNum": 117,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 212 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 118": {
          "stNum": 118,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 213 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 119": {
          "stNum": 119,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 214 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 120": {
          "stNum": 120,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 215 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 121": {
          "stNum": 121,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 216 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 122": {
          "stNum": 122,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 217 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 123": {
          "stNum": 123,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 218 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 124": {
          "stNum": 124,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 219 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 125": {
          "stNum": 125,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 220 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 126": {
          "stNum": 126,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 221 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 127": {
          "stNum": 127,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 222 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 128": {
          "stNum": 128,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 223 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 129": {
          "stNum": 129,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 224 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 130": {
          "stNum": 130,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 225 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 131": {
          "stNum": 131,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 226 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 132": {
          "stNum": 132,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 227 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 133": {
          "stNum": 133,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 228 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 134": {
          "stNum": 134,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 229 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 135": {
          "stNum": 135,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 230 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 136": {
          "stNum": 136,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 231 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 137": {
          "stNum": 137,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 232 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 138": {
          "stNum": 138,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 233 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 139": {
          "stNum": 139,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 234 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 140": {
          "stNum": 140,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 235 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 141": {
          "stNum": 141,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 236 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 142": {
          "stNum": 142,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 237 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 143": {
          "stNum": 143,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 238 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 144": {
          "stNum": 144,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 239 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 145": {
          "stNum": 145,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 240 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 146": {
          "stNum": 146,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 241 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 147": {
          "stNum": 147,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 242 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 148": {
          "stNum": 148,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 243 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 149": {
          "stNum": 149,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 244 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 150": {
          "stNum": 150,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 245 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 151": {
          "stNum": 151,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 246 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 152": {
          "stNum": 152,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 247 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 153": {
          "stNum": 153,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 248 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 154": {
          "stNum": 154,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 249 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 155": {
          "stNum": 155,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 250 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 156": {
          "stNum": 156,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 251 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 157": {
          "stNum": 157,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 252 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 158": {
          "stNum": 158,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 253 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 159": {
          "stNum": 159,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 254 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "WebSockets: new WebSocket(url, invalid protocol) 160": {
          "stNum": 160,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: char code 255 function \"function () {\n      new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                    \"a\"+String.fromCharCode(i)+\"b\")\n    }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-binary-arraybufferview-int32.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - ArrayBufferView - Int32Array - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Int32Array - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Int32Array - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/cookies/006.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: setting Secure cookie with document.cookie, checking ws request": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/constructor/018.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: NULL char in url": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Close-1000.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create WebSocket - Close the Connection - close(1000) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/constructor/014.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: serialize establish a connection": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/constants/005.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "defineProperty getter CONNECTING": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "defineProperty getter OPEN": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "defineProperty getter CLOSING": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "defineProperty getter CLOSED": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-4999-reason.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(4999, reason) - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Close the Connection - close(4999, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/cookies/002.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: Set-Cookie in response": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Create-asciiSep-protocol-string.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Create WebSocket - Pass a valid URL and a protocol string with an ascii separator character - SYNTAX_ERR is thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: function \"function () {\n    wsocket = CreateWebSocketWithAsciiSep(asciiWithSep)\n  }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/cookies/003.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: sending HttpOnly cookies in ws request": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Send-binary-65K-arraybuffer.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send 65K binary data on a WebSocket - ArrayBuffer - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send 65K binary data on a WebSocket - ArrayBuffer - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send 65K binary data on a WebSocket - ArrayBuffer - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/readyState/007.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: getting readyState in closing": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-large.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: bufferedAmount for 65K data": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Send-paired-surrogates.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send (paired surrogates) data on a WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send (paired surrogates) data on a WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send (paired surrogates) data on a WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/close/close-return.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: close() return value": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-readyState-Closing.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - readyState should be in CLOSING state just before onclose is called": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-unicode.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: bufferedAmount for unicode data": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/unload-a-document/002.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: navigating top-level browsing context with closed websocket": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/cookies/004.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: setting HttpOnly cookies in ws response, checking document.cookie": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/cookies/007.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: when to process set-cookie fields in ws response": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_unreached: Reached unreachable code"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/009.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: listening for events with onclose": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/004.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: members of EventTarget": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-defineProperty-getter.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: defineProperty getter for bufferedAmount": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/url/004.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: 'URL'": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/020.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: error events": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/017.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: this, e.target, e.currentTarget, e.eventPhase": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Create-protocols-repeated-case-insensitive.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Create WebSocket - Pass a valid URL and an array of protocol strings with repeated values but different case - SYNTAX_ERR is thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: function \"function () {\n    wsocket = CreateWebSocketWithRepeatedProtocolsCaseInsensitive()\n  }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/009.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: send('')": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Close-Reason-124Bytes.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create WebSocket - Close the Connection - close(code, 'reason more than 123 bytes') - SYNTAX_ERR is thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/binaryType-wrong-value.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create WebSocket - set binaryType to something other than blob or arraybuffer - SYNTAX_ERR is returned - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create WebSocket - set binaryType to something other than blob or arraybuffer - SYNTAX_ERR is returned - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/binary/002.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: Send/Receive blob, blob size greater than network array buffer": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-binary-65K-arraybuffer.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send 65K binary data on a Secure WebSocket - ArrayBuffer - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send 65K binary data on a Secure WebSocket - ArrayBuffer - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send 65K binary data on a Secure WebSocket - ArrayBuffer - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/readyState/003.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: delete readyState": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_equals: delete ws.readyState expected 2 but got 0"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/url/resolve.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSocket#url: resolving": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_equals: expected \"ws://webapitests2018.ctawave.org:44823/echo?foo%20bar%20baz\" but got \"ws://webapitests2018.ctawave.org:44823/echo?foo%20bar baz\""
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/constants/004.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSocket.prototype.CONNECTING": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "ws.CONNECTING": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSocket.prototype.OPEN": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "ws.OPEN": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSocket.prototype.CLOSING": {
          "stNum": 4,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "ws.CLOSING": {
          "stNum": 5,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSocket.prototype.CLOSED": {
          "stNum": 6,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "ws.CLOSED": {
          "stNum": 7,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Send-unicode-data.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send unicode data on a WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send unicode data on a WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send unicode data on a WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/008.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: listening for events with onerror": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/close/close-multiple.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: close() several times": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/constructor/012.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: no protocol in response": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/constructor/006.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: converting first arguments": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-2999-reason.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(2999, reason) - INVALID_ACCESS_ERR is thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/014.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Setting event handlers to null onclose": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Setting event handlers to null onopen": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Setting event handlers to null onerror": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Setting event handlers to null onmessage": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/002.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: replacing send": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/unload-a-document/003.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: navigating nested browsing context": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/closing-handshake/002.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: server sends closing handshake": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/constructor/010.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: protocol in response but no requested protocol": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/constructor/002.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: new WebSocket(invalid url)": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(invalid url) 1": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(invalid url) 2": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(invalid url) 3": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(invalid url) 4": {
          "stNum": 4,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(invalid url) 5": {
          "stNum": 5,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(invalid url) 6": {
          "stNum": 6,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(invalid url) 7": {
          "stNum": 7,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(invalid url) 8": {
          "stNum": 8,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(invalid url) 9": {
          "stNum": 9,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Send-0byte-data.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send 0 byte data on a WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send 0 byte data on a WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send 0 byte data on a WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-arraybuffer.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: bufferedAmount for ArrayBuffer": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-1000.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(1000) - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Close the Connection - close(1000) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/closing-handshake/003.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: client sends closing handshake": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-paired-surrogates.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send paired surrogates data on a Secure WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send paired surrogates data on a Secure WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send paired surrogates data on a Secure WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-binary-arraybufferview-uint8-offset.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Send-65K-data.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send 65K data on a WebSocket -  Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send 65K data on a WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send 65K data on a WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/unload-a-document/001.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: navigating top-level browsing context": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-unpaired-surrogates.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send unpaired surrogates on a Secure WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send unpaired surrogates on a Secure WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send unpaired surrogates on a Secure WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/CloseEvent/constructor.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "new CloseEvent() without dictionary": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "new CloseEvent() with dictionary": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/constructor/008.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: new WebSocket(url with not blocked port)": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(url with not blocked port) 1": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(url with not blocked port) 2": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: new WebSocket(url with not blocked port) 3": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Send-data.worker.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send data on a WebSocket in a Worker": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/001.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: send() with no args": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-getting.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: bufferedAmount after send()ing": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/Create-Secure-valid-url-binaryType-blob.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - wsocket.binaryType should be set to 'blob' after connection is established - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - wsocket.binaryType should be set to 'blob' after connection is established - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/basic-auth.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "HTTP basic authentication should work with WebSockets": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/011.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: sending non-ascii, combining chars and non-BMP": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/readyState/008.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: getting readyState in closed": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/constructor/019.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: uppercase 'WS:'": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/constructor/011.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: protocol mismatch": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/010.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: setting event handlers to undefined": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: setting event handlers to undefined 1": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: setting event handlers to undefined 2": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "WebSockets: setting event handlers to undefined 3": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/CloseEvent/historical.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "initCloseEvent": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_false: expected false got true"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/Create-Secure-valid-url-array-protocols.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Pass a valid URL and array of protocol strings - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Pass a valid URL and array of protocol strings - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Send-data.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send data on a WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send data on a WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send data on a WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/url/006.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: defineProperty setter for url": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Create-Secure-url-with-space.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Create Secure WebSocket - Pass a URL with a space - SYNTAX_ERR should be thrown": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/send/008.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: send() in onclose": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/constructor.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Calling the WebSocket constructor with too many arguments should not throw.": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Create-valid-url-protocol.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create WebSocket - Pass a valid URL and a protocol string - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create WebSocket - Pass a valid URL and a protocol string - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Send-binary-arraybufferview-int8.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send binary data on a WebSocket - ArrayBufferView - Int8Array - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Int8Array - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send binary data on a WebSocket - ArrayBufferView - Int8Array - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/url/003.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: deleting url": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-65K-data.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send  65K data on a Secure WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send 65K data on a Secure WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send 65K data on a Secure WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/constructor/013.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: multiple WebSocket objects": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_unreached: Reached unreachable code"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-undefined.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Secure-Close-undefined": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/013.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "onclose": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "onopen": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "onerror": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "onmessage": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/constructor/007.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: new WebSocket(url, null char)": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_throws: function \"function () {\n    new WebSocket(SCHEME_DOMAIN_PORT + '/empty-message',\n                  'a' + String.fromCharCode(0) + 'b')\n  }\" did not throw"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/Create-valid-url.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create WebSocket - Pass a valid URL - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create WebSocket - Pass a valid URL - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/url/005.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: defineProperty getter for url": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/015.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: instanceof on events": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/security/002.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: check Sec-WebSocket-Key": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-3000-verify-code.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - close(3000, reason) - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Close the Connection - close(3000, reason) - verify return code is 3000 - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Secure-Close-readyState-Closed.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create Secure WebSocket - Close the Connection - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create Secure WebSocket - Close the Connection - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Close-reason-unpaired-surrogates.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/007.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: listening for events with onmessage": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/close/close-basic.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: close()": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_equals: expected 2 but got 0"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/016.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: addEventListener": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/constructor/017.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "ws:": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "SyntaxError"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "ws:/": {
          "stNum": 1,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "SyntaxError"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "wss:": {
          "stNum": 2,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "SyntaxError"
          },
          "totals": {
            "FAIL": 1
          }
        },
        "wss:/": {
          "stNum": 3,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "SyntaxError"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/interfaces/CloseEvent/clean-close.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: wasClean, true": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/readyState/004.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: defineProperty getter for readyState": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/interfaces/WebSocket/events/003.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: listening for events with onopen": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/Create-invalid-urls.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "Url is /echo - should throw SYNTAX_ERR": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Url is a mail address - should throw SYNTAX_ERR": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Url is about:blank - should throw SYNTAX_ERR": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Url is ?test - should throw SYNTAX_ERR": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "Url is #test - should throw SYNTAX_ERR": {
          "stNum": 4,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/close-invalid.any.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "0 on a secure websocket": {
          "stNum": 0,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "0 on a insecure websocket": {
          "stNum": 1,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "500 on a secure websocket": {
          "stNum": 2,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "500 on a insecure websocket": {
          "stNum": 3,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "NaN on a secure websocket": {
          "stNum": 4,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "NaN on a insecure websocket": {
          "stNum": 5,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "String on a secure websocket": {
          "stNum": 6,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "String on a insecure websocket": {
          "stNum": 7,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "null on a secure websocket": {
          "stNum": 8,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "null on a insecure websocket": {
          "stNum": 9,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "2**16+1000 on a secure websocket": {
          "stNum": 10,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        },
        "2**16+1000 on a insecure websocket": {
          "stNum": 11,
          "byUA": {
            "Ed18": "PASS"
          },
          "UAmessage": {},
          "totals": {
            "PASS": 1
          }
        }
      }
    },
    "/websockets/opening-handshake/002.html": {
      "byUA": {
        "Ed18": "OK"
      },
      "UAmessage": {},
      "totals": {
        "OK": 1
      },
      "subtests": {
        "WebSockets: valid handshake": {
          "stNum": 0,
          "byUA": {
            "Ed18": "FAIL"
          },
          "UAmessage": {
            "Ed18": "assert_unreached: Reached unreachable code"
          },
          "totals": {
            "FAIL": 1
          }
        }
      }
    },
    "/websockets/Create-valid-url-array-protocols.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Create WebSocket - Pass a valid URL and array of protocol strings - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Create WebSocket - Pass a valid URL and array of protocol strings - Connection should be closed": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Secure-Send-unicode-data.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Send  unicode data on a Secure WebSocket - Connection should be opened": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send unicode data on a Secure WebSocket - Message should be received": {
          "stNum": 1,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        },
        "Send unicode data on a Secure WebSocket - Connection should be closed": {
          "stNum": 2,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/Close-undefined.any.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "Close-undefined": {
          "stNum": 0,
          "byUA": {
            "Ed18": "NOTRUN"
          },
          "UAmessage": {},
          "totals": {
            "NOTRUN": 1
          }
        }
      }
    },
    "/websockets/constructor/016.html": {
      "byUA": {
        "Ed18": "TIMEOUT"
      },
      "UAmessage": {},
      "totals": {
        "TIMEOUT": 1
      },
      "subtests": {
        "WebSockets: non-ascii URL in query, document encoding windows-1252": {
          "stNum": 0,
          "byUA": {
            "Ed18": "TIMEOUT"
          },
          "UAmessage": {
            "Ed18": "Test timed out"
          },
          "totals": {
            "TIMEOUT": 1
          }
        }
      }
    }
  }
}