Test sending ec crypto keys via postMessage to a worker.

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


PASS All checks passed in worker for private key
PASS privateKey.type is 'private'
PASS privateKey.extractable is true
PASS privateKey.algorithm.name is 'ECDH'
PASS privateKey.algorithm.namedCurve is 'P-256'
PASS privateKey.usages is ['deriveBits']
PASS exportedKey.x is privateKeyJSON.x
PASS exportedKey.y is privateKeyJSON.y
PASS exportedKey.d is privateKeyJSON.d
PASS All checks passed in worker for public key
PASS publicKey.type is 'public'
PASS publicKey.extractable is true
PASS publicKey.algorithm.name is 'ECDH'
PASS publicKey.algorithm.namedCurve is 'P-256'
PASS publicKey.usages is [ ]
PASS exportedKey.x is publicKeyJSON.x
PASS exportedKey.y is publicKeyJSON.y
PASS successfullyParsed is true

TEST COMPLETE

