Description
Hi.
I try to improve test coverage of internal/crypto.
Already I submitted pull requests that I can write test.
#17555, #17458, #17449, #17447, #17426, #17418, #17728 and #17730.
I found two coverage blockers.
1. process.binding('crypto').PBKDF2
does not returns -1
Code
node/lib/internal/crypto/pbkdf2.js
Lines 82 to 87 in 7124b46
Reason
PBKDF2
returns undefined always because PBKDF2
returns anything.
See also:
Line 5569 in efffcc2
So never match returns -1
.
2. Can't throw ERR_CRYPTO_HASH_UPDATE_FAILED
Code
node/lib/internal/crypto/hash.js
Lines 57 to 58 in 7907534
Reason
Hash#_handle.update does not throw an Error(ERR_CRYPTO_HASH_UPDATE_FAILED).
Hash#_handle.update returns false when mdctx_
pointed at null.
But I could not reproduce mdctx_ make the null pointer.
See also:
Lines 4131 to 4133 in efffcc2
1: I think should remove check where PBKDF2 returns -1.
2: Please teach me how to make mdctx_
to the null pointer.