test: update 'proxy' dependency to v2 (#28895)
This won't fix it yet, but prepare for a smaller version bump once the upstream fix has been merged. https://github.com/microsoft/playwright/issues/28701.
This commit is contained in:
parent
1d8c6d4760
commit
0f3bd9835f
59
package-lock.json
generated
59
package-lock.json
generated
|
|
@ -57,7 +57,7 @@
|
|||
"mime": "^3.0.0",
|
||||
"ncp": "^2.0.0",
|
||||
"node-stream-zip": "^1.15.0",
|
||||
"proxy": "^1.0.2",
|
||||
"proxy": "^2.1.1",
|
||||
"react": "^18.1.0",
|
||||
"react-dom": "^18.1.0",
|
||||
"socksv5": "0.0.6",
|
||||
|
|
@ -2281,9 +2281,10 @@
|
|||
"dev": true
|
||||
},
|
||||
"node_modules/args": {
|
||||
"version": "5.0.1",
|
||||
"version": "5.0.3",
|
||||
"resolved": "https://registry.npmjs.org/args/-/args-5.0.3.tgz",
|
||||
"integrity": "sha512-h6k/zfFgusnv3i5TU08KQkVKuCPBtL/PWQbWkHUxvJrZ2nAyeaUupneemcrgn1xmqxPQsPIzwkUhOpoqPDRZuA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"camelcase": "5.0.0",
|
||||
"chalk": "2.4.2",
|
||||
|
|
@ -2491,7 +2492,9 @@
|
|||
"license": "MIT"
|
||||
},
|
||||
"node_modules/basic-auth-parser": {
|
||||
"version": "0.0.2",
|
||||
"version": "0.0.2-1",
|
||||
"resolved": "https://registry.npmjs.org/basic-auth-parser/-/basic-auth-parser-0.0.2-1.tgz",
|
||||
"integrity": "sha512-GFj8iVxo9onSU6BnnQvVwqvxh60UcSHJEDnIk3z4B6iOjsKSmqe+ibW0Rsz7YO7IE1HG3D3tqCNIidP46SZVdQ==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/boolean": {
|
||||
|
|
@ -2613,8 +2616,9 @@
|
|||
},
|
||||
"node_modules/camelcase": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz",
|
||||
"integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
|
|
@ -5205,8 +5209,9 @@
|
|||
},
|
||||
"node_modules/leven": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz",
|
||||
"integrity": "sha512-nvVPLpIHUxCUoRLrFqTgSxXJ614d8AgQoWl7zPe/2VadE8+1dpU3LBhowRuBAcuwruWtOdD8oYC9jDNJjXDPyA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
|
|
@ -5477,8 +5482,9 @@
|
|||
},
|
||||
"node_modules/mri": {
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmjs.org/mri/-/mri-1.1.4.tgz",
|
||||
"integrity": "sha512-6y7IjGPm8AzlvoUrwAaw1tLnUBudaS3752vcd8JtrpGGQn+rXIe63LFVHm/YMwtqAuh+LJPCFdlLYPWM1nYn6w==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
|
|
@ -6002,16 +6008,17 @@
|
|||
"optional": true
|
||||
},
|
||||
"node_modules/proxy": {
|
||||
"version": "1.0.2",
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/proxy/-/proxy-2.1.1.tgz",
|
||||
"integrity": "sha512-nLgd7zdUAOpB3ZO/xCkU8gy74UER7P0aihU8DkUsDS5ZoFwVCX7u8dy+cv5tVK8UaB/yminU1GiLWE26TKPYpg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"args": "5.0.1",
|
||||
"basic-auth-parser": "0.0.2",
|
||||
"debug": "^4.1.1"
|
||||
"args": "^5.0.3",
|
||||
"basic-auth-parser": "0.0.2-1",
|
||||
"debug": "^4.3.4"
|
||||
},
|
||||
"bin": {
|
||||
"proxy": "bin/proxy.js"
|
||||
"engines": {
|
||||
"node": ">= 14"
|
||||
}
|
||||
},
|
||||
"node_modules/pump": {
|
||||
|
|
@ -9805,7 +9812,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"args": {
|
||||
"version": "5.0.1",
|
||||
"version": "5.0.3",
|
||||
"resolved": "https://registry.npmjs.org/args/-/args-5.0.3.tgz",
|
||||
"integrity": "sha512-h6k/zfFgusnv3i5TU08KQkVKuCPBtL/PWQbWkHUxvJrZ2nAyeaUupneemcrgn1xmqxPQsPIzwkUhOpoqPDRZuA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"camelcase": "5.0.0",
|
||||
|
|
@ -9963,7 +9972,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"basic-auth-parser": {
|
||||
"version": "0.0.2",
|
||||
"version": "0.0.2-1",
|
||||
"resolved": "https://registry.npmjs.org/basic-auth-parser/-/basic-auth-parser-0.0.2-1.tgz",
|
||||
"integrity": "sha512-GFj8iVxo9onSU6BnnQvVwqvxh60UcSHJEDnIk3z4B6iOjsKSmqe+ibW0Rsz7YO7IE1HG3D3tqCNIidP46SZVdQ==",
|
||||
"dev": true
|
||||
},
|
||||
"boolean": {
|
||||
|
|
@ -10042,6 +10053,8 @@
|
|||
},
|
||||
"camelcase": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz",
|
||||
"integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==",
|
||||
"dev": true
|
||||
},
|
||||
"caniuse-lite": {
|
||||
|
|
@ -11752,6 +11765,8 @@
|
|||
},
|
||||
"leven": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz",
|
||||
"integrity": "sha512-nvVPLpIHUxCUoRLrFqTgSxXJ614d8AgQoWl7zPe/2VadE8+1dpU3LBhowRuBAcuwruWtOdD8oYC9jDNJjXDPyA==",
|
||||
"dev": true
|
||||
},
|
||||
"levn": {
|
||||
|
|
@ -11940,6 +11955,8 @@
|
|||
},
|
||||
"mri": {
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmjs.org/mri/-/mri-1.1.4.tgz",
|
||||
"integrity": "sha512-6y7IjGPm8AzlvoUrwAaw1tLnUBudaS3752vcd8JtrpGGQn+rXIe63LFVHm/YMwtqAuh+LJPCFdlLYPWM1nYn6w==",
|
||||
"dev": true
|
||||
},
|
||||
"ms": {
|
||||
|
|
@ -12296,12 +12313,14 @@
|
|||
"optional": true
|
||||
},
|
||||
"proxy": {
|
||||
"version": "1.0.2",
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/proxy/-/proxy-2.1.1.tgz",
|
||||
"integrity": "sha512-nLgd7zdUAOpB3ZO/xCkU8gy74UER7P0aihU8DkUsDS5ZoFwVCX7u8dy+cv5tVK8UaB/yminU1GiLWE26TKPYpg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"args": "5.0.1",
|
||||
"basic-auth-parser": "0.0.2",
|
||||
"debug": "^4.1.1"
|
||||
"args": "^5.0.3",
|
||||
"basic-auth-parser": "0.0.2-1",
|
||||
"debug": "^4.3.4"
|
||||
}
|
||||
},
|
||||
"pump": {
|
||||
|
|
|
|||
|
|
@ -95,7 +95,7 @@
|
|||
"mime": "^3.0.0",
|
||||
"ncp": "^2.0.0",
|
||||
"node-stream-zip": "^1.15.0",
|
||||
"proxy": "^1.0.2",
|
||||
"proxy": "^2.1.1",
|
||||
"react": "^18.1.0",
|
||||
"react-dom": "^18.1.0",
|
||||
"socksv5": "0.0.6",
|
||||
|
|
|
|||
|
|
@ -14,9 +14,10 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import type { IncomingMessage, Server } from 'http';
|
||||
import type { IncomingMessage } from 'http';
|
||||
import type { Socket } from 'net';
|
||||
import createProxy from 'proxy';
|
||||
import type { ProxyServer } from 'proxy';
|
||||
import { createProxy } from 'proxy';
|
||||
|
||||
export class TestProxy {
|
||||
readonly PORT: number;
|
||||
|
|
@ -25,7 +26,7 @@ export class TestProxy {
|
|||
connectHosts: string[] = [];
|
||||
requestUrls: string[] = [];
|
||||
|
||||
private readonly _server: Server;
|
||||
private readonly _server: ProxyServer;
|
||||
private readonly _sockets = new Set<Socket>();
|
||||
private _handlers: { event: string, handler: (...args: any[]) => void }[] = [];
|
||||
|
||||
|
|
@ -66,11 +67,11 @@ export class TestProxy {
|
|||
}
|
||||
|
||||
setAuthHandler(handler: (req: IncomingMessage) => boolean) {
|
||||
(this._server as any).authenticate = (req: IncomingMessage, callback) => {
|
||||
this._server.authenticate = (req: IncomingMessage) => {
|
||||
try {
|
||||
callback(null, handler(req));
|
||||
return handler(req);
|
||||
} catch (e) {
|
||||
callback(e, false);
|
||||
return false;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
|
@ -81,7 +82,7 @@ export class TestProxy {
|
|||
for (const { event, handler } of this._handlers)
|
||||
this._server.removeListener(event, handler);
|
||||
this._handlers = [];
|
||||
(this._server as any).authenticate = undefined;
|
||||
this._server.authenticate = undefined;
|
||||
}
|
||||
|
||||
private _prependHandler(event: string, handler: (...args: any[]) => void) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue