From 535a01d8898a5cc858c9d6031fc5ecda96ea4579 Mon Sep 17 00:00:00 2001 From: Damien Arrachequesne Date: Sun, 20 Nov 2022 00:12:08 +0100 Subject: [PATCH] ci: add Node.js 18 in the test matrix A few notes: - the certificates were recreated because Node.js 18 includes OpenSSL v3, which has deprecated support for some legacy ciphers (like RC2) - eiows currently fails to build on Node.js 18, so the tests are temporarily skipped See also: https://github.com/nodejs/Release --- .github/workflows/ci.yml | 28 ++++++++++++++++++++------- package-lock.json | 26 ++++++++++++------------- package.json | 8 ++++---- test/common.js | 2 +- test/fixtures/client.crt | 40 +++++++++++++++++++-------------------- test/fixtures/client.pfx | Bin 1949 -> 1973 bytes test/fixtures/server.crt | 40 +++++++++++++++++++-------------------- test/server.js | 26 +++++++++++-------------- 8 files changed, 90 insertions(+), 80 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e9ba96264..62ebbbf17 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,21 +6,35 @@ on: schedule: - cron: '0 0 * * 0' +permissions: + contents: read + jobs: test-node: runs-on: ubuntu-latest + timeout-minutes: 10 strategy: matrix: - node-version: [14, 16] + node-version: + - 10 + - 18 steps: - - uses: actions/checkout@v2 + - name: Checkout repository + uses: actions/checkout@v3 + - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 + uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} - - run: npm ci - - run: npm test - env: - CI: true + + - name: Install dependencies + run: npm ci + + - name: Run tests + run: npm test + + - name: Run tests with µWebSockets.js + run: npm run test:uws + if: ${{ matrix.node-version == '18' }} diff --git a/package-lock.json b/package-lock.json index 79099ff1c..65353c7e6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -22,7 +22,7 @@ }, "devDependencies": { "babel-eslint": "^8.0.2", - "eiows": "^3.8.0", + "eiows": "^4.1.2", "engine.io-client": "6.2.0", "engine.io-client-v3": "npm:engine.io-client@3.5.2", "expect.js": "^0.3.1", @@ -31,7 +31,7 @@ "rimraf": "^3.0.2", "superagent": "^3.8.1", "typescript": "^4.4.3", - "uWebSockets.js": "github:uNetworking/uWebSockets.js#v20.0.0" + "uWebSockets.js": "github:uNetworking/uWebSockets.js#v20.15.0" }, "engines": { "node": ">=10.0.0" @@ -542,13 +542,13 @@ } }, "node_modules/eiows": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/eiows/-/eiows-3.8.0.tgz", - "integrity": "sha512-ElPW+EakV8NSsA5QWJCWEx88LO/xyqMFilvsZ4P9+uyVS4ikbq2zndnYC++XLKysC+c922bGkAKeNrqWNmwNyg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/eiows/-/eiows-4.1.2.tgz", + "integrity": "sha512-dNu+yOdp/mPROgEIW9pFnx+iBLob130BPqspXxSt63OvICtitrpYQSmdJ2M7irIwqh3oj1JfDKadHPCocKPBpg==", "dev": true, "hasInstallScript": true, "engines": { - "node": ">=8.12.0 <18.0" + "node": ">=14.13.0 <19.0" } }, "node_modules/emoji-regex": { @@ -1751,8 +1751,8 @@ "dev": true }, "node_modules/uWebSockets.js": { - "version": "20.0.0", - "resolved": "git+https://git@github.com/uNetworking/uWebSockets.js.git#4558ee00f9f1f686fffe1accbfc2e85b1af9c50f", + "version": "20.15.0", + "resolved": "git+https://git@github.com/uNetworking/uWebSockets.js.git#77bc1fd5577ae42b56675912eb8481a31f3fefd2", "dev": true }, "node_modules/vary": { @@ -2363,9 +2363,9 @@ "dev": true }, "eiows": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/eiows/-/eiows-3.8.0.tgz", - "integrity": "sha512-ElPW+EakV8NSsA5QWJCWEx88LO/xyqMFilvsZ4P9+uyVS4ikbq2zndnYC++XLKysC+c922bGkAKeNrqWNmwNyg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/eiows/-/eiows-4.1.2.tgz", + "integrity": "sha512-dNu+yOdp/mPROgEIW9pFnx+iBLob130BPqspXxSt63OvICtitrpYQSmdJ2M7irIwqh3oj1JfDKadHPCocKPBpg==", "dev": true }, "emoji-regex": { @@ -3258,9 +3258,9 @@ "dev": true }, "uWebSockets.js": { - "version": "git+https://git@github.com/uNetworking/uWebSockets.js.git#4558ee00f9f1f686fffe1accbfc2e85b1af9c50f", + "version": "git+https://git@github.com/uNetworking/uWebSockets.js.git#77bc1fd5577ae42b56675912eb8481a31f3fefd2", "dev": true, - "from": "uWebSockets.js@github:uNetworking/uWebSockets.js#v20.0.0" + "from": "uWebSockets.js@github:uNetworking/uWebSockets.js#v20.15.0" }, "vary": { "version": "1.1.2", diff --git a/package.json b/package.json index 99d537f26..e03057fd6 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ }, "devDependencies": { "babel-eslint": "^8.0.2", - "eiows": "^3.8.0", + "eiows": "^4.1.2", "engine.io-client": "6.2.0", "engine.io-client-v3": "npm:engine.io-client@3.5.2", "expect.js": "^0.3.1", @@ -53,17 +53,17 @@ "rimraf": "^3.0.2", "superagent": "^3.8.1", "typescript": "^4.4.3", - "uWebSockets.js": "github:uNetworking/uWebSockets.js#v20.0.0" + "uWebSockets.js": "github:uNetworking/uWebSockets.js#v20.15.0" }, "scripts": { "compile": "rimraf ./build && tsc", - "test": "npm run compile && npm run format:check && npm run test:default && npm run test:compat-v3 && npm run test:eiows && npm run test:uws", + "test": "npm run compile && npm run format:check && npm run test:default && npm run test:compat-v3", "test:default": "mocha --bail --exit", "test:compat-v3": "EIO_CLIENT=3 mocha --exit", "test:eiows": "EIO_WS_ENGINE=eiows mocha --exit", "test:uws": "EIO_WS_ENGINE=uws mocha --exit", "format:check": "prettier --check \"lib/**/*.ts\" \"test/**/*.js\"", - "format:fix": "prettier --write \"lib/**/*.ts' 'test/**/*.js\"", + "format:fix": "prettier --write \"lib/**/*.ts\" \"test/**/*.js\"", "prepack": "npm run compile" }, "repository": { diff --git a/test/common.js b/test/common.js index c02d6a429..bb3cebdbb 100644 --- a/test/common.js +++ b/test/common.js @@ -1,5 +1,4 @@ const { listen, uServer } = require(".."); -const { App, us_socket_local_port } = require("uWebSockets.js"); const { Socket } = process.env.EIO_CLIENT === "3" ? require("engine.io-client-v3") @@ -18,6 +17,7 @@ exports.listen = (opts, fn) => { opts.allowEIO3 = true; if (process.env.EIO_WS_ENGINE === "uws") { + const { App, us_socket_local_port } = require("uWebSockets.js"); const engine = new uServer(opts); const app = App(); engine.attach(app, opts); diff --git a/test/fixtures/client.crt b/test/fixtures/client.crt index 7264aa0d4..2957b4abc 100644 --- a/test/fixtures/client.crt +++ b/test/fixtures/client.crt @@ -1,22 +1,22 @@ -----BEGIN CERTIFICATE----- -MIIDojCCAYoCAQIwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQVUxEzARBgNV -BAgTClNvbWUtU3RhdGUxITAfBgNVBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0 -ZDAeFw0xNTExMTgxNzM4MDVaFw0yNTExMTUxNzM4MDVaMG0xCzAJBgNVBAYTAkZJ -MRMwEQYDVQQIEwpTb21lLVN0YXRlMREwDwYDVQQHEwhIZWxzaW5raTEhMB8GA1UE -ChMYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMRMwEQYDVQQDEwpGb28gQ2xpZW50 -MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD66Rn8P8O+MK13sPxIIEMHXDRZ -heRLqGNlNsXzaBLWnKSlV+Wxi1OdCimtAh4ZAVRt1JkK9mQEAGdxC8TRwDMS02+E -UK1H1zvh77Ek4ZcHW8p5CVEm53FTmO+jhL+7BQYXW1yi/XURBv2xm3Q95I7895ag -prMFI8HiOu/Hdi/iDQIDAQABMA0GCSqGSIb3DQEBBQUAA4ICAQBynfI9C5/zcukL -oQmUSEg5ys99bGUa8QyhSRbp5nb8Wl76KRIxpqGxl+3wcyhES3cH1Vgv4CMvrVag -Qov4TG4B30MvEvd17BMD1BmDNqjOInW72ujS9wo+2K6NASw1r/96Ay7dJ7+3HE0r -gs9yaiRL5UG4y7Sp1gy5JynXNozNowVP/cy84L9K2oyiJpyc5Owg93i3E7X+/eXd -JfFTO6ZfTGNdN+hMjleyj/LXOsoeaYg3GhO9i99nzf3u0HBXI1wRbkRPJ0aNSkH0 -VEValjOGeRdKvlZhsf7x8Kg7Nk7fyIyhmYU/tBOSUasFiB7CfKN/m0P1e6DMqihW -U/k4bzoVND3KuNH5EZmfSs3BE/w5fakObCpkxAMMm6Lxtb6qBV2HlWFfatcL2WoM -nqdCEPjct7crPbgtn3Pa/erlvmAWFoqsCu4Xn4SRGP1JtGXbCLaAW4S5CffaODRp -4urgxD8bfk9Mm/9b/xAAMNkcAi4oBikVTnVWrpul/qIhY0iMfqIu6MkbWAthMT4h -th5AggLxl6+dcPGNaliC5JpRtCis+fWuKxwbf8YKSEIwi0VBQbPP2ATinqfOJ1Yo -/tymAa3IKukil6RuTECTpE06x+Ns0rMJTSN2SGd4AG/n1/SAjhBHoH1J0J4JG30f -5fx0ax5MzGuTrt9yNEUvIrKj6MIgmw== +MIIDtTCCAZ0CFCt+tjtA9647yZp8eNZurQtNp4x+MA0GCSqGSIb3DQEBDQUAMEUx +CzAJBgNVBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRl +cm5ldCBXaWRnaXRzIFB0eSBMdGQwHhcNMjIxMTE4MjEyMzU4WhcNMzIxMTE1MjEy +MzU4WjBtMQswCQYDVQQGEwJGSTETMBEGA1UECBMKU29tZS1TdGF0ZTERMA8GA1UE +BxMISGVsc2lua2kxITAfBgNVBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDET +MBEGA1UEAxMKRm9vIENsaWVudDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA ++ukZ/D/DvjCtd7D8SCBDB1w0WYXkS6hjZTbF82gS1pykpVflsYtTnQoprQIeGQFU +bdSZCvZkBABncQvE0cAzEtNvhFCtR9c74e+xJOGXB1vKeQlRJudxU5jvo4S/uwUG +F1tcov11EQb9sZt0PeSO/PeWoKazBSPB4jrvx3Yv4g0CAwEAATANBgkqhkiG9w0B +AQ0FAAOCAgEAMgC3j2XJ5IPB1raLrnJh8vTncnqMe6OmXpaxk0ZYb42Y66BJKlaE +UpLmLYIiICmuH6R4lc00W5nexPyCT4g+1CUs3PhOJGEwWOBodv6dFJ4ayGWln1aD +QX+W+PRuJAazd7wruVnPxVoEspVO+hcr5byX0F3Auqd9jdQZwFXsWvAo7tZxUnvC +gdjnHt5QgMxqeqzZPTw7dreMsIjN6NrUPWaa26VCvLH0Nv+Jgs+RSVwBKp8tO3e+ +763bi8Htpzt4YfAB7EuRykGlAI42C5ZDzcsq30NpSGgOwveHnlvdl6KhC0QaK71h +QmXwBmEUNX1f+XRnvk+fNb1acfddLLYoPP0zS1BEYOOs7KkyScagsUMsnUSOfv3d ++etklFvaXFD3+b/KwljH3WH1dG4ro3J6GHXX05ncDydDDksYi6aC3wpPZYY7eMFx +RWSxMZHX/bD1YH80a2+jBoskTqz3ZFkkGySMfUcpDCUwQuiwjhLp4sew9RDRB/lv +kJezNSoYgnT44CT+IPoPEL1m5Evkm3C7fVzvnldO3TsWmOoza99xrQ+9gtzlWxgb +Av6jNbnGG1HgDYcvxpRMKWe+6fUAHCcP0PuO+2rcygemNtEKzfMY6Py66w5L9/WW +t0UJWU1rR+kLDS3qLfQqvnbvUMroZ9zxE9CJq6+aKEQEpc79lfiv464= -----END CERTIFICATE----- diff --git a/test/fixtures/client.pfx b/test/fixtures/client.pfx index 11e663341bbacfaa509c84f252973e39f24bfa1c..381a0a4f29fd0710d09770659fe6a97be2f444e3 100644 GIT binary patch delta 1906 zcmV-&2aWih548_KFoFlM0s#Xsf(Lg72`Yw2hW8Bt2LYgh2WSL>2V^jU2VgLQ1YZUT zDuzgg_YDCD2B3ljP%wf7OacJ_FoFa{kw6%K127H*2zI=6%RQaeGy(z$0Dyu77&5I8 zmIY%8;Wbv0WRJE3W@xnjf}x(SOI>ECA+a`92TVG6skmgj^Ape%9%I-;c}4x8)b%YK zeVl<#b{R^ndFE%MG4`b5Eh9g3`01$0*w71t#zHR(r;kSkosp@CL$_X%uN6%wC9T$f z7xjdfB#9H|koE?)RT8-PI9$N1Gv|2CX0OXCs-S5?tzZ$GF|f=-?0CVSABDzAcE{Ai z;lBI#)L4P(Qf7|P@$F`G%u%T^Bn6*@H;w&1gzib&Z0Ynj^ z3~5iOYnP_LrHxtDYe|3TxHrpqbt)}?AgmG%QOnP88un~X?Au?RX$P=sEHa0II^7&9 z)_4iMaOz001k=&|2St{mdcZpM<6H#w&M`Ji8 z?NaTpgbAnUHwTKDpnaq;Z9mDzH(7IHsRXW0L3`R@IE80*-0Amy!ah69nTalc^Y&EF z%zcnnJ?DBh0j1w95a6vxfs*tT+I;%;z=chKA@e8_mMZK>I&&S06V%j-w-OHFN++e( zHZLyJh5xVfaI;r@7z}S8708V&_TLZd(V223clucD%5U;`gCpr<2)4{bUO^a!EFx&;pgo#MP z1FKL#ML z!{l*RIsdXdzTY8HVPUt+)Ud3jP4ORdm+U`NleLGOu$wikekStBR#uWmd(-s8+-3IKM zEvdMUf#pX1Z!hc@S7^QO-y6KKVNH)nLGy^7YyT?LNNwSaS)$FGY$T=gIrY-yh@_+a7~&MYka z1NXjK3w`3P0lf3gO?IY0e8SwEercfp!woa z%msji;I;rtlbkcBNRw>@Mt@AZPm$(i?nnXx2ml0v0)QCK=NMJW@EO>va#brrs(jL@ zDoWoT8{Gba`dfGLy^z60?TSq@lGZa;;JYq#>S9v>C3iL~alA1ykZ_Sq3H;&7Nr*Ytab7mX;SbsajX

@wk_o_ z9@rlEYht~LwXUc?z8dAZsH9M1nL95e(O>WKfKwX?Ngzy00H8szV%9|S;rft++ysT% z^qtRsKwoYUqb!px@h$J;c@#(k)h4^bl>7G=UF-&KvJns{Tq}%2NYJ1g-kMgo6D*MQ zmMwbk4mw*HCdNG|ZGR!thNw>;<1_6>D0_rJfoEYX7)1N{U=mmn;}CIe>Irt4^P-TM zeQslbszYp-ozJP5`oZ6gVcYyZKyVY5zVnA&e?*%j$Y)xGPCTJ1;o`bczzh7W%OYiP zk6$E~s}*-Yfa_(vpzX0yzn)~;cE$IT}zRO7tVI0a)Ev8tzsU^c6tL9k-tO+#l+Wc(Xj*|6jNRu?`t zq~>y$jions0e{JR0PNJnDyMl>mc&?jdl@=)%9@h7AZkPXV8tdffQH(zD$#8lvl zC9ToKi{LFooG?Utu?)WS!5GjH&^#gVcJ3d4AXP$@K5vtwbmhJJW=g{hk3-?Vt4Jl* zEQ`T0B`_lf2`Yw2hW8Bt2^BFG1QdDHvZUitiC_U2>kC7V#^F5DG>0%TFd;Ar1_dh) s0|FWa00b1QYaG=5cRY8>uHf`3)mWB2Kh;|V2+|8GfPbmt8v+6d0JxcX;{X5v delta 1882 zcmV-g2c`J651kJ{FoFk}0s#Xsf(Ks)2`Yw2hW8Bt2LYgh2T%lp2TU-62S_l21V;u5 zDuzgg_YDCD2B3ljI52_)Gy(wtFoFavkw6%K1~3i;2w6M~9s|Qz;{pN*0Dyu70Cixy zdtqx!YGJKI9B~!qorD;^eEnCmNFWUv5R+L7>}{@JMV3Axhcl|5YLKAWcRfeD!P@9R z10*6dXk3H9>%DgIx?kj3U&gr{>iVGVv)$*~K5lzUdta$x$7qZ%#21-DOoX-6YVG}h z9M-QiAPp!+vg!Ky22Bd8MpB}G?>W{3tE(+tH)c4IQDFd9e(!Xpg!0im9#g7d{d#x^ z{itEqgX<@pu^_4#v}P^Gs&8rR08V|nqOrtb*0G4F^s5?P7zWbgpeXE!j5vaum_{JbqozF<6htObv9^>4W%!xKYDkn z<}EM}u|<3Y4&%2<-f;-PmJA_(*myOr3JE=jw|hvJO~FZ9J+(OZVavMhXq@RMAvFxOsdQ5bQ#Kl_lpJcmf7_d2xd%!i$W^$)=j z4m^ilxmk3pQ+zx+f!QmHOa%NNA@}kP$UNh^@dFYaL#1Hod@UinV41rSf8% zvrmflul|H`(wINAvy}6H^J!vEaXnDCL{zdH9BVYRwb= zbFJkIdY-VTgHZ>r-w2+4o7=xjBTF|uw~9KA&&uRW{P1E&mgj-LiFNBCe0RnV%U9?y zM8+|D2*K>!UbcSVHM{YD9eGuB{r$%4edwmpKw4~rmX0}ftQOJl&r?dH{1GVp;#tczRCGIq7x7z&-A`!CWJQfH-KU~ z&;mUpPBsXL3qd_fK|79(P91hp9PD_$oIa=wZR8SRbwP+Q>s0G=*5(*esiD!NlvttP z<+9o>AyK&5N1hcRbSgIbZ-wesX|)zzF@^W8>$F_f_D#%&EJg`UIi;Q(_oS7& zfyBhpa!r~pDGAudZC>t)x7qb8QdiMYp{LmZ7c!0ar&lIPAPqsd(Yn?wf>6P`d}$Tp z!8M}#KOR959Y^_>;(yb4)EFT$ew~1coJ_U1Im|NQ3p!Tu!!K62o62hS1?hHYK#!AOKcm`aBIX)sQe4IkIKr-&2!qCokAEDhMcWnXML)}AFyzV5 z^LVz+Ybgh{Y$~|IC71qt6$p|FsT#k5%dCZQ7MtJM%HQj1r!feH%-9)sz;hR2(fhDH z>TJ&Hr-mTOEkS7c&&>U(1klRGeN&4%!;xKOqQ|^Id~{`Aa4$^n0DZM21il?)dgHf> zbv*9RszGEmOK+^kIf*iXUO2OE8{_WVnDF%>3*d$^B`_lf2`Yw2hW8Bt2^BFG1Qdf* z@sw5E$Y>Hs;}e|c2<*mZLnkmXFd;Ar1_dh)0|FWa00a~yM!8t!&Rzl|Qew8|P2r{2 U8s0Yq2%owgi0P$+=mG)=0ALt-wEzGB diff --git a/test/fixtures/server.crt b/test/fixtures/server.crt index 0b49d96e5..acc6c646f 100644 --- a/test/fixtures/server.crt +++ b/test/fixtures/server.crt @@ -1,22 +1,22 @@ -----BEGIN CERTIFICATE----- -MIIDoTCCAYkCAQEwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQVUxEzARBgNV -BAgTClNvbWUtU3RhdGUxITAfBgNVBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0 -ZDAeFw0xNTExMTgxNzM4MDhaFw0yNTExMTUxNzM4MDhaMGwxCzAJBgNVBAYTAkZJ -MRMwEQYDVQQIEwpTb21lLVN0YXRlMREwDwYDVQQHEwhIZWxzaW5raTEhMB8GA1UE -ChMYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMRIwEAYDVQQDEwlsb2NhbGhvc3Qw -gZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMBAs08Mguowi6W8+BrqiByLr3Fh -pKnnRTtO/wfDDebgP3Da5vIapHt0NbbSIYkju1M1y/9S0uqCScSIIFeSr8wOvmB1 -c0jRX+P6oA6p8lJXG/HEfEuu3uK+Olkds7sHcrtuRaYLEAXNYCUTlT0VdfVvxV96 -0m/5wMRpexjC5h+jAgMBAAEwDQYJKoZIhvcNAQEFBQADggIBACvxt9oSl8zDz2i9 -DFtBVA87TYkv7MPqc6HKzpzKjUpay1CmTrXxaw9WKXGC47aoj/wXNqe1W/w5KUdH -79Z7n/TKpQJ9hj3NQJerFGD5EGu+rL4/FshMiwjp0/AiuAIThVa11BDzmEltwf86 -mHfIhRG89m3LmJbCzOLTjqjnt3vL5fcW0KEN+5TDFxINbXC6o+ioZgMeh3n+d01D -MZImN01A0ZwKch81IDmPZD/IrtCLGwG/YfTaQUshMHUaQIKqDIyzDb/VgWGh1vET -J6Zpbvr3xc+mg34588qd6JcyND6X1LKBvLUNqcIrcAaChbabyPUCy1w+XDgcATZg -uerXcELSApivaSVGZVNkrbUskDySjZp2NhpEhDFim3HZye7CUvVIM5AI8BPeI5ZA -nYi2kcya3e9/u3YxfsCklbxCiBUMhVYT3EVHNILr0Eik4NJp92xBLyRk770WvwMc -MAiRNK5+XM0DffzHe9PrcopWRwvPsh8ce9IUsTJQjx0zALc8JKT6VN8J1cNseZR5 -ALuTasgFliRFYCwUJcwCpoXUDJas7hbBDcbecMbFKDCrmUbG6moRqETtljDtn4na -cKwaAk2sp9CSaNoLAsWd45ElXpeoKtNz7dFsRf1nSu2GPdE2SdaPJ6br+bKcO6TW -LRObFtVqZM7TTrPUuVji72CfFMtl +MIIDtDCCAZwCFCt+tjtA9647yZp8eNZurQtNp4x/MA0GCSqGSIb3DQEBDQUAMEUx +CzAJBgNVBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRl +cm5ldCBXaWRnaXRzIFB0eSBMdGQwHhcNMjIxMTE4MjEyNDExWhcNMzIxMTE1MjEy +NDExWjBsMQswCQYDVQQGEwJGSTETMBEGA1UECBMKU29tZS1TdGF0ZTERMA8GA1UE +BxMISGVsc2lua2kxITAfBgNVBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDES +MBAGA1UEAxMJbG9jYWxob3N0MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDA +QLNPDILqMIulvPga6ogci69xYaSp50U7Tv8Hww3m4D9w2ubyGqR7dDW20iGJI7tT +Ncv/UtLqgknEiCBXkq/MDr5gdXNI0V/j+qAOqfJSVxvxxHxLrt7ivjpZHbO7B3K7 +bkWmCxAFzWAlE5U9FXX1b8VfetJv+cDEaXsYwuYfowIDAQABMA0GCSqGSIb3DQEB +DQUAA4ICAQCDSuFPJ++HY5WBhpnumbZ7+T0ReWKaerdNnQ2Xgrna5mZfB2xeRkvY +XeJ9VBCpGgEZKCKkhZCjomn/kLkYzRk4Sqr1ivN5NWl6G/9UTttHdRa3xiR1NhKI +AMYghpel30w5e+cWtsdR06P2FvZMuiMFCyqsbPf1xcEIAXN7HJDswq6g0ppTVZ4L +sXljG/J0vp+jAst4XKGLaGqnt8JaBnpNX9NO2Up3h5j7Pa4Nhm/LZ3Ku5ZVDmS1d +B98Bsgr6tQSSyPNfZW0tGXELsNX1I+wUFw9IXFadRTHkhjeT/GhFw3i12uY7rqzm +uJegTtWDkp1QOajhYhLD9WGXb9teldkAAgZawD6ax/uAzqx/4mBFvsUa3FMcua8k +HF9P2lLzKAcyaKt1cvlfUYmDVZ2Gh+9PgM8SqRpMIqK5jMRvFgemxJXS9BMBrQLp +TCvgRwQZD4mUloRlGNewKfJ0oQ1rY29vwdjTL8+BBS/GR8EuzYnqJG/D2nK0guIN +ze+cSDghA5N2pp/ffnpLWmkIDO+fsGAj3eApLhbPQ1xCXnEv6fOjgUmnxdt41m8d ++pEVBICohnvYgoEERDNAi1onJlBd/eyk0Jn37QiwqhQyrmfgwncvlt2SyzS1IZ7s +cEYreG6QHghBhgYiYo0FMuDCjT6g6Ga+T8nOp0xpZtGEWvHwjLjxvQ== -----END CERTIFICATE----- diff --git a/test/server.js b/test/server.js index 5de0e2591..74ad2a17b 100644 --- a/test/server.js +++ b/test/server.js @@ -3646,7 +3646,8 @@ describe("server", () => { } }); - it("should allow loading of other websocket server implementation like eiows", done => { + // FIXME eiows fails to build on Node.js 18 (and has dropped support for Node.js 10) + it.skip("should allow loading of other websocket server implementation like eiows", done => { const engine = listen( { allowUpgrades: false, wsEngine: require("eiows").Server }, port => { @@ -3667,19 +3668,20 @@ describe("server", () => { }); describe("remoteAddress", () => { + const POSSIBLE_VALUES = [ + "0000:0000:0000:0000:0000:0000:0000:0001", + "0000:0000:0000:0000:0000:ffff:7f00:0001", + "::ffff:127.0.0.1", + "::1" + ]; + it("should be defined (polling)", done => { const engine = listen({ transports: ["polling"] }, port => { new ClientSocket(`ws://localhost:${port}`, { transports: ["polling"] }); engine.on("connection", socket => { - if (process.env.EIO_WS_ENGINE === "uws") { - expect(socket.remoteAddress).to.be( - "0000:0000:0000:0000:0000:ffff:7f00:0001" - ); - } else { - expect(socket.remoteAddress).to.be("::ffff:127.0.0.1"); - } + expect(POSSIBLE_VALUES).to.contain(socket.remoteAddress); done(); }); }); @@ -3691,13 +3693,7 @@ describe("server", () => { transports: ["websocket"] }); engine.on("connection", socket => { - if (process.env.EIO_WS_ENGINE === "uws") { - expect(socket.remoteAddress).to.be( - "0000:0000:0000:0000:0000:ffff:7f00:0001" - ); - } else { - expect(socket.remoteAddress).to.be("::ffff:127.0.0.1"); - } + expect(POSSIBLE_VALUES).to.contain(socket.remoteAddress); done(); }); });