Test importing a JWK RSA-PSS public key with SHA-1

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


Importing a key...
PASS publicKey.toString() is '[object CryptoKey]'
PASS publicKey.type is 'public'
PASS publicKey.extractable is true
PASS publicKey.algorithm.name is 'RSA-PSS'
PASS publicKey.algorithm.modulusLength is 2048
PASS bytesToHexString(publicKey.algorithm.publicExponent) is '010001'
PASS publicKey.algorithm.hash.name is 'SHA-1'
PASS publicKey.usages is ['verify']
PASS successfullyParsed is true

TEST COMPLETE

