chromium/third_party/blink/web_tests/crypto/subtle/deserialize-legacy-aes-key-empty-usages.html

<!DOCTYPE html>
<html>
<head>
<script src="../../resources/js-test.js"></script>
<script src="resources/common.js"></script>
</head>
<body>
<script>
description("Check that an already imported key with empty usages can be deserialized.");

// It used to be possible to import keys with empty usages, it is possible that
// such keys were persisted to storage. This test verifies that such keys can
// still be successfully de-serialized.

// The version number of the serialized format used is 7.

var serializedKey = "ff073f004b010110011030112233445566778899aabbccddeeff";

var key = internals.deserializeBuffer(hexStringToUint8Array(serializedKey).buffer);

shouldBeEqualToString("key.type", "secret");
shouldBeTrue("key.extractable");
shouldBeEqualToString("key.algorithm.name", "AES-CBC");
shouldBe("key.usages", "[]");

</script>
</body>
</html>