MCPcopy Index your code
hub / github.com/nodejs/node / test

Function test

test/parallel/test-tls-set-sigalgs.js:15–65  ·  view source on GitHub ↗
(csigalgs, ssigalgs, shared_sigalgs, cerr, serr)

Source from the content-addressed store, hash-verified

13} = require(fixtures.path('tls-connect'));
14
15function test(csigalgs, ssigalgs, shared_sigalgs, cerr, serr) {
16 assert(shared_sigalgs || serr || cerr, 'test missing any expectations');
17 connect({
18 client: {
19 checkServerIdentity: (servername, cert) => { },
20 ca: `${keys.agent1.cert}\n${keys.agent6.ca}`,
21 cert: keys.agent2.cert,
22 key: keys.agent2.key,
23 sigalgs: csigalgs
24 },
25 server: {
26 cert: keys.agent6.cert,
27 key: keys.agent6.key,
28 ca: keys.agent2.ca,
29 context: {
30 requestCert: true,
31 rejectUnauthorized: true
32 },
33 sigalgs: ssigalgs
34 },
35 }, common.mustCall((err, pair, cleanup) => {
36 if (shared_sigalgs) {
37 assert.ifError(err);
38 assert.ifError(pair.server.err);
39 assert.ifError(pair.client.err);
40 assert(pair.server.conn);
41 assert(pair.client.conn);
42 // BoringSSL's OpenSSL-compatible SSL_get_shared_sigalgs() API always
43 // returns zero, so a successful handshake still reports an empty list.
44 const expectedSharedSigalgs = process.features.openssl_is_boringssl ?
45 [] :
46 shared_sigalgs;
47 assert.deepStrictEqual(
48 pair.server.conn.getSharedSigalgs(),
49 expectedSharedSigalgs
50 );
51 } else {
52 if (serr) {
53 assert(pair.server.err);
54 assert.strictEqual(pair.server.err.code, serr);
55 }
56
57 if (cerr) {
58 assert(pair.client.err);
59 assert.strictEqual(pair.client.err.code, cerr);
60 }
61 }
62
63 return cleanup();
64 }));
65}
66
67// Have shared sigalgs
68test('RSA-PSS+SHA384', 'RSA-PSS+SHA384', ['RSA-PSS+SHA384']);

Callers 1

Calls 3

connectFunction · 0.70
cleanupFunction · 0.70
assertFunction · 0.50

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…