Files
node/test/parallel/test-tls-clientcertengine-unsupported.js
T
2026-06-19 18:03:51 +02:00

40 lines
962 B
JavaScript

// Flags: --expose-internals
'use strict';
const common = require('../common');
if (!common.hasCrypto)
common.skip('missing crypto');
const assert = require('assert');
common.expectWarning({
'internal/test/binding':
'These APIs are for internal testing only. Do not use them.',
'DeprecationWarning': {
DEP0183: 'OpenSSL engine-based APIs are deprecated.',
},
});
// Monkey-patch SecureContext
const { internalBinding } = require('internal/test/binding');
const binding = internalBinding('crypto');
const NativeSecureContext = binding.SecureContext;
binding.SecureContext = function() {
const rv = new NativeSecureContext();
rv.setClientCertEngine = undefined;
return rv;
};
const tls = require('tls');
{
assert.throws(
() => { tls.createSecureContext({ clientCertEngine: 'Cannonmouth' }); },
{
code: 'ERR_CRYPTO_CUSTOM_ENGINE_NOT_SUPPORTED',
message: 'Custom engines not supported by this OpenSSL'
}
);
}