mirror of
https://github.com/cypress-io/cypress.git
synced 2026-04-30 03:51:21 -05:00
d185a74dc9
* use a parser that supports circular json
* update tests to work with new socketio version
* add error message when users supply circular body to visit/request
* show the path of the circular reference detected
* Revert "use a parser that supports circular json"
This reverts commit c052f44ec8.
* add failing driver and server tests for circular objs over websocket
* use a parser that supports circular json
* add has-binary2 patch that enables circular objects to be inspected
* update socket spec
* rejectUnauthorized: false
* use @packages/socket instead of copying client source
* prevent false positive
* use commit hash for socket.io-circular-parser
* cleanup bundling of socket.io for node + browser
- keep the interfaces identical
- browser simply has less properties than the node variant
* properly import client + circularParser from socket package
* @cypress/what-is-circular
* dont require the extension, it causes gulp to hang
* fix runner tests hanging
Co-authored-by: Brian Mann <brian.mann86@gmail.com>
Socket
This is a shared lib for holding both the socket.io server and client.
Installing
The sockets's dependencies can be installed with:
cd packages/socket
npm install
Using
const socket = require("packages/socket")
// returns
{
server: require("socket.io"),
client: require("socket.io-client"),
getPathToClientSource: function () {
// returns path to the client 'socket.io.js' file
// for use in the browser
}
}
const socket = require("packages/socket")
// server usage
const srv = require("http").createServer()
const io = socket.server(srv)
io.on("connection", function(){})
// client usage
const client = socket.client("http://localhost:2020")
client.on("connect", function(){})
client.on("event", function(){})
client.on("disconnect", function(){})
// path usage
socket.getPathToClientSource()
// returns your/path/to/node_modules/socket.io-client/socket.io.js0
Testing
npm test