mirror of
https://github.com/servo/servo.git
synced 2025-08-05 13:40:08 +01:00
Update web-platform-tests to revision a46616a5b18e83587ddbbed756c7b96cbb4b015d
This commit is contained in:
parent
3f07cfec7c
commit
578498ba24
4001 changed files with 159517 additions and 30260 deletions
File diff suppressed because it is too large
Load diff
|
@ -1,5 +0,0 @@
|
||||||
[test_ecdh_bits.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: deriveBits() Using ECDH]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_ecdh_keys.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI:deriveKey() Using ECDH]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_hkdf.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: deriveBits() and deriveKey() Using HKDF]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_pbkdf2.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: deriveBits() and deriveKey() Using PBKDF2]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,242 +0,0 @@
|
||||||
[test_digest.html]
|
|
||||||
type: testharness
|
|
||||||
[SHA-1 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-1 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-1 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-1 with empty source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-256 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-256 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-256 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-256 with empty source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-384 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-384 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-384 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-384 with empty source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-512 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-512 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-512 with empty source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-512 with empty source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-1 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-1 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-1 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-1 with short source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-256 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-256 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-256 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-256 with short source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-384 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-384 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-384 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-384 with short source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-512 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-512 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-512 with short source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-512 with short source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-1 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-1 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-1 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-1 with medium source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-256 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-256 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-256 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-256 with medium source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-384 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-384 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-384 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-384 with medium source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-512 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-512 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-512 with medium source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-512 with medium source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-1 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-1 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-1 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-1 with long source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-256 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-256 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-256 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-256 with long source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-384 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-384 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-384 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-384 with long source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-512 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[sha-512 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Sha-512 with long source data]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[SHA-512 with long source data and altered buffer after call]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[AES-GCM with empty]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[RSA-OAEP with empty]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[PBKDF2 with empty]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[AES-KW with empty]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[AES-GCM with short]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[RSA-OAEP with short]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[PBKDF2 with short]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[AES-KW with short]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[AES-GCM with medium]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[RSA-OAEP with medium]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[PBKDF2 with medium]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[AES-KW with medium]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[AES-GCM with long]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[RSA-OAEP with long]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[PBKDF2 with long]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[AES-KW with long]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_aes_cbc.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: encrypt() Using AES-CBC]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_aes_ctr.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: encrypt() Using AES-CTR]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_aes_gcm.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: encrypt() Using AES-GCM]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_rsa_oaep.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: encrypt() Using RSA-OAEP]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_aes-cbc.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_aes-ctr.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures_AES-CBC.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures_AES-CTR.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures_AES-GCM.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures_AES-KW.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures_ECDH.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures_ECDSA.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures_HMAC.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures_RSA-OAEP.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures_RSA-PSS.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_failures_RSASSA-PKCS1-v1_5.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() for Failures]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes_AES-CBC.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes_AES-CTR.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes_AES-GCM.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes_AES-KW.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes_ECDH.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes_ECDSA.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes_HMAC.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes_RSA-OAEP.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes_RSA-PSS.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_successes_RSASSA-PKCS1-v1_5.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: generateKey() Successful Calls]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,218 +0,0 @@
|
||||||
[test_ec_importKey.html]
|
|
||||||
type: testharness
|
|
||||||
[Good parameters: P-256 bits (spki, buffer(91), {name: ECDSA, namedCurve: P-256}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y), {name: ECDSA, namedCurve: P-256}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (pkcs8, buffer(138), {name: ECDSA, namedCurve: P-256}, true, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y, d), {name: ECDSA, namedCurve: P-256}, true, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (spki, buffer(91), {name: ECDSA, namedCurve: P-256}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y), {name: ECDSA, namedCurve: P-256}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (pkcs8, buffer(138), {name: ECDSA, namedCurve: P-256}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y, d), {name: ECDSA, namedCurve: P-256}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (spki, buffer(120), {name: ECDSA, namedCurve: P-384}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y), {name: ECDSA, namedCurve: P-384}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (pkcs8, buffer(185), {name: ECDSA, namedCurve: P-384}, true, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y, d), {name: ECDSA, namedCurve: P-384}, true, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (spki, buffer(120), {name: ECDSA, namedCurve: P-384}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y), {name: ECDSA, namedCurve: P-384}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (pkcs8, buffer(185), {name: ECDSA, namedCurve: P-384}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y, d), {name: ECDSA, namedCurve: P-384}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (spki, buffer(158), {name: ECDSA, namedCurve: P-521}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y), {name: ECDSA, namedCurve: P-521}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDSA, namedCurve: P-521}, true, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y, d), {name: ECDSA, namedCurve: P-521}, true, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (spki, buffer(158), {name: ECDSA, namedCurve: P-521}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y), {name: ECDSA, namedCurve: P-521}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDSA, namedCurve: P-521}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y, d), {name: ECDSA, namedCurve: P-521}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (spki, buffer(91), {name: ECDH, namedCurve: P-256}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y), {name: ECDH, namedCurve: P-256}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (pkcs8, buffer(138), {name: ECDH, namedCurve: P-256}, true, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-256}, true, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (pkcs8, buffer(138), {name: ECDH, namedCurve: P-256}, true, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-256}, true, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (pkcs8, buffer(138), {name: ECDH, namedCurve: P-256}, true, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-256}, true, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (spki, buffer(91), {name: ECDH, namedCurve: P-256}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y), {name: ECDH, namedCurve: P-256}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (pkcs8, buffer(138), {name: ECDH, namedCurve: P-256}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-256}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (pkcs8, buffer(138), {name: ECDH, namedCurve: P-256}, false, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-256}, false, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (pkcs8, buffer(138), {name: ECDH, namedCurve: P-256}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-256 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-256}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (spki, buffer(120), {name: ECDH, namedCurve: P-384}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y), {name: ECDH, namedCurve: P-384}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (pkcs8, buffer(185), {name: ECDH, namedCurve: P-384}, true, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-384}, true, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (pkcs8, buffer(185), {name: ECDH, namedCurve: P-384}, true, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-384}, true, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (pkcs8, buffer(185), {name: ECDH, namedCurve: P-384}, true, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-384}, true, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (spki, buffer(120), {name: ECDH, namedCurve: P-384}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y), {name: ECDH, namedCurve: P-384}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (pkcs8, buffer(185), {name: ECDH, namedCurve: P-384}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-384}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (pkcs8, buffer(185), {name: ECDH, namedCurve: P-384}, false, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-384}, false, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (pkcs8, buffer(185), {name: ECDH, namedCurve: P-384}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-384 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-384}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (spki, buffer(158), {name: ECDH, namedCurve: P-521}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y), {name: ECDH, namedCurve: P-521}, true, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDH, namedCurve: P-521}, true, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-521}, true, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDH, namedCurve: P-521}, true, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-521}, true, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDH, namedCurve: P-521}, true, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-521}, true, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (spki, buffer(158), {name: ECDH, namedCurve: P-521}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y), {name: ECDH, namedCurve: P-521}, false, [\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDH, namedCurve: P-521}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-521}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDH, namedCurve: P-521}, false, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-521}, false, [deriveBits, deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (pkcs8, buffer(241), {name: ECDH, namedCurve: P-521}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: P-521 bits (jwk, object(kty, crv, x, y, d), {name: ECDH, namedCurve: P-521}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,704 +0,0 @@
|
||||||
[test_symmetric_importKey.html]
|
|
||||||
type: testharness
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CTR, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CTR}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CTR, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CTR}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CTR, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CTR}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CTR, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CTR}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CTR, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CTR}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CTR, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CTR}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CTR}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CTR}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CTR}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CTR}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CTR}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CTR}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CTR}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CTR}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CTR}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CTR}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CTR}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CTR}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CTR, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CTR}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CBC, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CBC}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CBC, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CBC}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CBC, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CBC}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CBC, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CBC}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CBC, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CBC}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128CBC, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-CBC}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CBC}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CBC}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CBC}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CBC}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CBC}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-CBC}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CBC}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CBC}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CBC}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CBC}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CBC}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-CBC}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256CBC, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-CBC}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128GCM, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-GCM}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128GCM, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-GCM}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128GCM, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-GCM}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128GCM, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-GCM}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128GCM, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-GCM}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128GCM, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-GCM}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-GCM}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-GCM}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-GCM}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-GCM}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-GCM}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-GCM}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-GCM}, true, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-GCM}, false, [encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-GCM}, true, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-GCM}, false, [decrypt, encrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-GCM}, true, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-GCM}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256GCM, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-GCM}, false, [decrypt\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, true, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128KW, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-KW}, true, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, false, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128KW, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-KW}, false, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, true, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128KW, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-KW}, true, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, false, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128KW, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-KW}, false, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, true, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128KW, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-KW}, true, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, false, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: A128KW, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {name: AES-KW}, false, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, true, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-KW}, true, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, false, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-KW}, false, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, true, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-KW}, true, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, false, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-KW}, false, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, true, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-KW}, true, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, false, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: A192KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {name: AES-KW}, false, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, true, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-KW}, true, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, false, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-KW}, false, [wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, true, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-KW}, true, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, false, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-KW}, false, [unwrapKey, wrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, true, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-KW}, true, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: AES-KW}, false, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: A256KW, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {name: AES-KW}, false, [unwrapKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-1, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS1, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-1, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-1, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS1, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-1, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-1, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS1, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-1, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-1, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS1, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-1, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-1, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS1, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-1, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-1, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS1, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-1, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-1, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS1, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-1, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-1, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS1, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-1, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-1, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS1, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-1, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-256, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS256, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-256, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-256, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS256, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-256, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-256, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS256, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-256, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-256, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS256, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-256, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-256, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS256, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-256, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-256, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS256, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-256, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-256, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS256, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-256, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-256, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS256, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-256, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-256, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS256, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-256, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-384, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS384, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-384, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-384, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS384, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-384, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-384, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS384, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-384, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-384, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS384, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-384, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-384, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS384, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-384, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-384, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS384, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-384, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-384, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS384, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-384, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-384, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS384, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-384, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-384, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS384, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-384, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-512, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS512, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-512, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-512, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS512, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-512, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-512, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (jwk, {alg: HS512, k: AQIDBAUGBwgJCgsMDQ4PEA, kty: oct}, {hash: SHA-512, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-512, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS512, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-512, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-512, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS512, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-512, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-512, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (jwk, {alg: HS512, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcY, kty: oct}, {hash: SHA-512, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-512, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS512, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-512, name: HMAC}, false, [sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-512, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS512, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-512, name: HMAC}, false, [verify, sign\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {hash: SHA-512, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (jwk, {alg: HS512, k: AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyA, kty: oct}, {hash: SHA-512, name: HMAC}, false, [verify\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: HKDF}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: HKDF}, false, [deriveKey, deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: HKDF}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: HKDF}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: HKDF}, false, [deriveKey, deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: HKDF}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: HKDF}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: HKDF}, false, [deriveKey, deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: HKDF}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: PBKDF2}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: PBKDF2}, false, [deriveKey, deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 128 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 2: 3, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: PBKDF2}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: PBKDF2}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: PBKDF2}, false, [deriveKey, deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 192 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 3: 4, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: PBKDF2}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: PBKDF2}, false, [deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: PBKDF2}, false, [deriveKey, deriveBits\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[Good parameters: 256 bits (raw, {0: 1, 1: 2, 10: 11, 11: 12, 12: 13, 13: 14, 14: 15, 15: 16, 16: 17, 17: 18, 18: 19, 19: 20, 2: 3, 20: 21, 21: 22, 22: 23, 23: 24, 24: 25, 25: 26, 26: 27, 27: 28, 28: 29, 29: 30, 3: 4, 30: 31, 31: 32, 4: 5, 5: 6, 6: 7, 7: 8, 8: 9, 9: 10}, {name: PBKDF2}, false, [deriveKey\])]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_ecdsa.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: sign() and verify() Using ECDSA]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_hmac.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: sign() and verify() Using HMAC]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_rsa_pkcs.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: sign() and verify() Using RSASSA-PKCS1-v1_5]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_rsa_pss.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: sign() and verify() Using RSA-PSS]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[test_wrapKey_unwrapKey.html]
|
|
||||||
type: testharness
|
|
||||||
[WebCryptoAPI: wrapKey() and unwrapKey()]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
disabled: gigantic tests that all fail/timeout
|
1
tests/wpt/metadata/encoding/legacy-mb-korean/__dir__.ini
Normal file
1
tests/wpt/metadata/encoding/legacy-mb-korean/__dir__.ini
Normal file
|
@ -0,0 +1 @@
|
||||||
|
disabled: gigantic tests that all fail/timeout
|
|
@ -0,0 +1 @@
|
||||||
|
disabled: gigantic tests that all fail/timeout
|
|
@ -1,11 +0,0 @@
|
||||||
[event-handler-onauxclick.html]
|
|
||||||
type: testharness
|
|
||||||
[onauxclick is on the appropriate locations for GlobalEventHandlers]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[The default value of onauxclick is always null]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[The onauxclick content attribute must be compiled into the onauxclick property]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
local: 533853fdce029d7184a33f7d08bfce7cbd6248c8
|
local: 4ecddb0622dcb6fdb7a7bd5025dd12be293b30e1
|
||||||
upstream: a6213478991012d8b1da71a49bb01f013ff71869
|
upstream: a46616a5b18e83587ddbbed756c7b96cbb4b015d
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
[interfaces.html]
|
|
||||||
type: testharness
|
|
||||||
[Testing Symbol.iterator property of iterable interface URLSearchParams]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[URL interface: operation toJSON()]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[URL interface: new URL("http://foo") must inherit property "toJSON" with the proper type (12)]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
6
tests/wpt/web-platform-tests/.codecov.yml
Normal file
6
tests/wpt/web-platform-tests/.codecov.yml
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
comment:
|
||||||
|
require_changes: yes
|
||||||
|
|
||||||
|
ignore:
|
||||||
|
- "**"
|
||||||
|
- "!tools/.*"
|
1
tests/wpt/web-platform-tests/.gitignore
vendored
1
tests/wpt/web-platform-tests/.gitignore
vendored
|
@ -14,3 +14,4 @@ webdriver/.idea
|
||||||
.vscode/
|
.vscode/
|
||||||
.DS_Store
|
.DS_Store
|
||||||
*.rej
|
*.rej
|
||||||
|
_venv
|
||||||
|
|
14
tests/wpt/web-platform-tests/.gitmodules
vendored
14
tests/wpt/web-platform-tests/.gitmodules
vendored
|
@ -1,14 +1,12 @@
|
||||||
[submodule "resources"]
|
|
||||||
path = resources
|
|
||||||
url = https://github.com/w3c/testharness.js.git
|
|
||||||
ignore = dirty
|
|
||||||
[submodule "tools"]
|
|
||||||
path = tools
|
|
||||||
url = https://github.com/w3c/wpt-tools.git
|
|
||||||
ignore = dirty
|
|
||||||
[submodule "css/tools/apiclient"]
|
[submodule "css/tools/apiclient"]
|
||||||
path = css/tools/apiclient
|
path = css/tools/apiclient
|
||||||
url = https://github.com/w3c/csswg-apiclient.git
|
url = https://github.com/w3c/csswg-apiclient.git
|
||||||
[submodule "css/tools/w3ctestlib"]
|
[submodule "css/tools/w3ctestlib"]
|
||||||
path = css/tools/w3ctestlib
|
path = css/tools/w3ctestlib
|
||||||
url = https://github.com/w3c/csswg-w3ctestlib.git
|
url = https://github.com/w3c/csswg-w3ctestlib.git
|
||||||
|
[submodule "tools/html5lib/html5lib/tests/testdata"]
|
||||||
|
path = tools/html5lib/html5lib/tests/testdata
|
||||||
|
url = https://github.com/html5lib/html5lib-tests.git
|
||||||
|
[submodule "resources/webidl2/test/widlproc"]
|
||||||
|
path = resources/webidl2/test/widlproc
|
||||||
|
url = https://github.com/dontcallmedom/widlproc.git
|
|
@ -1,6 +1,9 @@
|
||||||
dist: trusty
|
dist: trusty
|
||||||
sudo: required
|
sudo: required
|
||||||
language: python
|
language: python
|
||||||
|
branches:
|
||||||
|
only:
|
||||||
|
- master
|
||||||
addons:
|
addons:
|
||||||
hosts:
|
hosts:
|
||||||
- web-platform.test
|
- web-platform.test
|
||||||
|
@ -9,6 +12,8 @@ addons:
|
||||||
- www2.web-platform.test
|
- www2.web-platform.test
|
||||||
- xn--n8j6ds53lwwkrqhv28a.web-platform.test
|
- xn--n8j6ds53lwwkrqhv28a.web-platform.test
|
||||||
- xn--lve-6lad.web-platform.test
|
- xn--lve-6lad.web-platform.test
|
||||||
|
jwt:
|
||||||
|
secure: N9lvgkqUPtFlz6Vpa6qTPFhymEsDCsbaCsT64/hj3vlHRxK94r5+ugVJ3zm99zC0q2j1ish8yJC7mN/W4wRfBE4sAwmdxrlowxF1DDGCkaLE9i/GWW92s0fBVGJmXLh8kwNkQ31hMOsaGfHIMpeLFS7Se741te7YqsHIzmBCdQs=
|
||||||
before_install:
|
before_install:
|
||||||
- git submodule update --init --recursive
|
- git submodule update --init --recursive
|
||||||
- export DISPLAY=:99.0
|
- export DISPLAY=:99.0
|
||||||
|
@ -17,7 +22,10 @@ install:
|
||||||
- pip install -U setuptools
|
- pip install -U setuptools
|
||||||
- pip install -U requests
|
- pip install -U requests
|
||||||
env: # required at the top-level for allow_failures to work below
|
env: # required at the top-level for allow_failures to work below
|
||||||
|
global:
|
||||||
|
- SAUCE_USERNAME=w3c-ttwf
|
||||||
matrix:
|
matrix:
|
||||||
|
fast_finish: true
|
||||||
include:
|
include:
|
||||||
- os: linux
|
- os: linux
|
||||||
python: "2.7"
|
python: "2.7"
|
||||||
|
@ -48,10 +56,34 @@ matrix:
|
||||||
env:
|
env:
|
||||||
- secure: "YTSXPwI0DyCA1GhYrLT9KMEV6b7QQKuEeaQgeFDP38OTzJ1+cIj3CC4SRNqbnJ/6SJwPGcdqSxLuV8m4e5HFFnyCcQnJe6h8EMsTehZ7W3j/fP9UYrJqYqvGpe3Vj3xblO5pwBYmq7sg3jAmmuCgAgOW6VGf7cRMucrsmFeo7VM="
|
- secure: "YTSXPwI0DyCA1GhYrLT9KMEV6b7QQKuEeaQgeFDP38OTzJ1+cIj3CC4SRNqbnJ/6SJwPGcdqSxLuV8m4e5HFFnyCcQnJe6h8EMsTehZ7W3j/fP9UYrJqYqvGpe3Vj3xblO5pwBYmq7sg3jAmmuCgAgOW6VGf7cRMucrsmFeo7VM="
|
||||||
- SCRIPT=ci_stability.sh PRODUCT=chrome:unstable
|
- SCRIPT=ci_stability.sh PRODUCT=chrome:unstable
|
||||||
|
- os: linux
|
||||||
|
python: "2.7"
|
||||||
|
env:
|
||||||
|
- secure: "YTSXPwI0DyCA1GhYrLT9KMEV6b7QQKuEeaQgeFDP38OTzJ1+cIj3CC4SRNqbnJ/6SJwPGcdqSxLuV8m4e5HFFnyCcQnJe6h8EMsTehZ7W3j/fP9UYrJqYqvGpe3Vj3xblO5pwBYmq7sg3jAmmuCgAgOW6VGf7cRMucrsmFeo7VM="
|
||||||
|
- SCRIPT=ci_stability.sh PRODUCT=sauce:safari:10.0 PLATFORM='macOS 10.12'
|
||||||
|
- os: linux
|
||||||
|
python: "2.7"
|
||||||
|
env:
|
||||||
|
- secure: "YTSXPwI0DyCA1GhYrLT9KMEV6b7QQKuEeaQgeFDP38OTzJ1+cIj3CC4SRNqbnJ/6SJwPGcdqSxLuV8m4e5HFFnyCcQnJe6h8EMsTehZ7W3j/fP9UYrJqYqvGpe3Vj3xblO5pwBYmq7sg3jAmmuCgAgOW6VGf7cRMucrsmFeo7VM="
|
||||||
|
- SCRIPT=ci_stability.sh PRODUCT=sauce:MicrosoftEdge:14.14393 PLATFORM='Windows 10'
|
||||||
|
- python: 2.7
|
||||||
|
env: TOXENV=py27 HYPOTHESIS_PROFILE=ci SCRIPT=ci_unittest.sh
|
||||||
|
- python: 3.5
|
||||||
|
env: TOXENV=py35 HYPOTHESIS_PROFILE=ci SCRIPT=ci_unittest.sh
|
||||||
|
- python: 3.6
|
||||||
|
env: TOXENV=py36 HYPOTHESIS_PROFILE=ci SCRIPT=ci_unittest.sh
|
||||||
|
- python: pypy
|
||||||
|
env: TOXENV=pypy HYPOTHESIS_PROFILE=ci SCRIPT=ci_unittest.sh
|
||||||
exclude:
|
exclude:
|
||||||
- env: # exclude empty env from the top-level above
|
- env: # exclude empty env from the top-level above
|
||||||
allow_failures:
|
allow_failures:
|
||||||
- env: SCRIPT=css/build-css-testsuites.sh
|
- env: SCRIPT=css/build-css-testsuites.sh
|
||||||
|
- env:
|
||||||
|
- secure: "YTSXPwI0DyCA1GhYrLT9KMEV6b7QQKuEeaQgeFDP38OTzJ1+cIj3CC4SRNqbnJ/6SJwPGcdqSxLuV8m4e5HFFnyCcQnJe6h8EMsTehZ7W3j/fP9UYrJqYqvGpe3Vj3xblO5pwBYmq7sg3jAmmuCgAgOW6VGf7cRMucrsmFeo7VM="
|
||||||
|
- SCRIPT=ci_stability.sh PRODUCT=chrome:unstable
|
||||||
|
- env:
|
||||||
|
- secure: "YTSXPwI0DyCA1GhYrLT9KMEV6b7QQKuEeaQgeFDP38OTzJ1+cIj3CC4SRNqbnJ/6SJwPGcdqSxLuV8m4e5HFFnyCcQnJe6h8EMsTehZ7W3j/fP9UYrJqYqvGpe3Vj3xblO5pwBYmq7sg3jAmmuCgAgOW6VGf7cRMucrsmFeo7VM="
|
||||||
|
- SCRIPT=ci_stability.sh PRODUCT=sauce:MicrosoftEdge:14.14393 PLATFORM='Windows 10'
|
||||||
script:
|
script:
|
||||||
- bash $SCRIPT
|
- bash $SCRIPT
|
||||||
cache:
|
cache:
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_1_ref.html>
|
<link rel=match href=drawimage_html_image_1_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_10_ref.html>
|
<link rel=match href=drawimage_html_image_10_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_11_ref.html>
|
<link rel=match href=drawimage_html_image_11_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_12_ref.html>
|
<link rel=match href=drawimage_html_image_12_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_2_ref.html>
|
<link rel=match href=drawimage_html_image_2_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_3_ref.html>
|
<link rel=match href=drawimage_html_image_3_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_4_ref.html>
|
<link rel=match href=drawimage_html_image_4_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_5_ref.html>
|
<link rel=match href=drawimage_html_image_5_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_6_ref.html>
|
<link rel=match href=drawimage_html_image_6_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_7_ref.html>
|
<link rel=match href=drawimage_html_image_7_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<link rel=match href=drawimage_html_image_8_ref.html>
|
<link rel=match href=drawimage_html_image_8_ref.html>
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
<!doctype HTML>
|
<!doctype HTML>
|
||||||
|
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>HTML5 Canvas Test: scale() transformation</title>
|
<title>HTML5 Canvas Test: scale() transformation</title>
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
...
|
|
||||||
<script>
|
|
||||||
var p = new DOMParser(), s = new XMLSerializer();
|
|
||||||
var doc = p.parseFromString("<!DOCTYPE foo [ <!ELEMENT foo (#PCDATA)> ]><foo/>", "text/xml")
|
|
||||||
w(s.serializeToString(doc))
|
|
||||||
</script>
|
|
||||||
<table>
|
|
||||||
<caption>Results</caption>
|
|
||||||
<thead>
|
|
||||||
<tr><th>UA<th>Result
|
|
||||||
<tbody>
|
|
||||||
<tr><th>Gecko<td><code><!DOCTYPE foo [ <!ELEMENT foo (#PCDATA)> ]>\n<foo/></code>
|
|
||||||
<tr><th>WebKit<td><code><!DOCTYPE foo><foo/></code>
|
|
||||||
<tr><th>Presto<td><code><?xml version="1.0"?><!DOCTYPE foo><foo/></code>
|
|
||||||
</table>
|
|
|
@ -8,6 +8,7 @@
|
||||||
<script>
|
<script>
|
||||||
var db, count = 0,
|
var db, count = 0,
|
||||||
t = async_test();
|
t = async_test();
|
||||||
|
t.add_cleanup(function() { indexedDB.deleteDatabase('webworker101'); });
|
||||||
|
|
||||||
t.step(function() {
|
t.step(function() {
|
||||||
var worker = new Worker("idbworker.js");
|
var worker = new Worker("idbworker.js");
|
||||||
|
@ -27,7 +28,4 @@
|
||||||
|
|
||||||
worker.postMessage(1);
|
worker.postMessage(1);
|
||||||
})
|
})
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="log"></div>
|
|
||||||
|
|
|
@ -7,33 +7,24 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
var db, open;
|
function upgrade_func(t, db, tx) {
|
||||||
|
|
||||||
setup(function() {
|
|
||||||
open = indexedDB.open('testdb-' + new Date().getTime());
|
|
||||||
open.onupgradeneeded = function(e) {
|
|
||||||
db = e.target.result;
|
|
||||||
var objStore = db.createObjectStore("test");
|
var objStore = db.createObjectStore("test");
|
||||||
objStore.createIndex("index", "");
|
objStore.createIndex("index", "");
|
||||||
|
|
||||||
objStore.add("data", 1);
|
objStore.add("data", 1);
|
||||||
objStore.add("data2", 2);
|
objStore.add("data2", 2);
|
||||||
};
|
}
|
||||||
},
|
|
||||||
{ explicit_done: true });
|
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
open.onsuccess = function() {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
|
|
||||||
async_test(document.title + " - advance").step(function(e) {
|
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").openCursor();
|
var rq = db.transaction("test").objectStore("test").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 2, 'count');
|
assert_equals(count, 2, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -61,18 +52,21 @@
|
||||||
|
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - advance"
|
||||||
|
);
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
async_test(document.title + " - continue").step(function(e) {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 2, 'count');
|
assert_equals(count, 2, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -104,18 +98,21 @@
|
||||||
|
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - continue"
|
||||||
|
);
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
async_test(document.title + " - fresh advance still async").step(function(e) {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 2, 'count');
|
assert_equals(count, 2, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -140,18 +137,21 @@
|
||||||
|
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - fresh advance still async"
|
||||||
|
);
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
async_test(document.title + " - fresh continue still async").step(function(e) {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").openCursor();
|
var rq = db.transaction("test").objectStore("test").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 2, 'count');
|
assert_equals(count, 2, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -174,13 +174,8 @@
|
||||||
|
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - fresh continue still async"
|
||||||
// Stop blocking the testing system from hereon
|
);
|
||||||
done();
|
|
||||||
}
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id=log></div>
|
|
||||||
|
|
|
@ -13,32 +13,24 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
var db, open;
|
function upgrade_func(t, db, tx) {
|
||||||
|
|
||||||
setup(function() {
|
|
||||||
open = indexedDB.open('testdb-' + new Date().getTime());
|
|
||||||
open.onupgradeneeded = function(e) {
|
|
||||||
db = e.target.result;
|
|
||||||
var objStore = db.createObjectStore("test");
|
var objStore = db.createObjectStore("test");
|
||||||
objStore.createIndex("index", "");
|
objStore.createIndex("index", "");
|
||||||
|
|
||||||
objStore.add("data", 1);
|
objStore.add("data", 1);
|
||||||
objStore.add("data2", 2);
|
objStore.add("data2", 2);
|
||||||
};
|
}
|
||||||
},
|
|
||||||
{ explicit_done: true });
|
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
open.onsuccess = function() {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
async_test(document.title + " - attempt to call advance twice").step(function(e) {
|
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 2, 'count');
|
assert_equals(count, 2, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -54,14 +46,17 @@
|
||||||
|
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - attempt to call advance twice"
|
||||||
|
);
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
async_test(document.title + " - pass something other than number").step(function(e) {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
|
||||||
assert_throws({ name: "TypeError" },
|
assert_throws({ name: "TypeError" },
|
||||||
|
@ -79,16 +74,20 @@
|
||||||
assert_throws({ name: "TypeError" },
|
assert_throws({ name: "TypeError" },
|
||||||
function() { cursor.advance("1 2"); });
|
function() { cursor.advance("1 2"); });
|
||||||
|
|
||||||
this.done();
|
t.done();
|
||||||
});
|
|
||||||
rq.onerror = fail(this, "unexpected error")
|
|
||||||
});
|
});
|
||||||
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
|
},
|
||||||
|
document.title + " - pass something other than number"
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
async_test(document.title + " - pass null/undefined").step(function(e) {
|
indexeddb_test(
|
||||||
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
|
||||||
assert_throws({ name: "TypeError" },
|
assert_throws({ name: "TypeError" },
|
||||||
|
@ -101,31 +100,38 @@
|
||||||
assert_throws({ name: "TypeError" },
|
assert_throws({ name: "TypeError" },
|
||||||
function() { cursor.advance(myvar); });
|
function() { cursor.advance(myvar); });
|
||||||
|
|
||||||
this.done();
|
t.done();
|
||||||
});
|
|
||||||
rq.onerror = fail(this, "unexpected error")
|
|
||||||
});
|
});
|
||||||
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
|
},
|
||||||
|
document.title + " - pass null/undefined"
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
async_test(document.title + " - missing argument").step(function(e) {
|
indexeddb_test(
|
||||||
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
|
||||||
assert_throws({ name: "TypeError" },
|
assert_throws({ name: "TypeError" },
|
||||||
function() { cursor.advance(); });
|
function() { cursor.advance(); });
|
||||||
|
|
||||||
this.done();
|
t.done();
|
||||||
});
|
|
||||||
rq.onerror = fail(this, "unexpected error")
|
|
||||||
});
|
});
|
||||||
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
|
},
|
||||||
|
document.title + " - missing argument"
|
||||||
|
);
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
async_test(document.title + " - pass negative numbers").step(function(e) {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
|
||||||
assert_throws({ name: "TypeError" },
|
assert_throws({ name: "TypeError" },
|
||||||
|
@ -150,22 +156,25 @@
|
||||||
assert_throws({ name: "TypeError" },
|
assert_throws({ name: "TypeError" },
|
||||||
function() { cursor.advance(myvar); });
|
function() { cursor.advance(myvar); });
|
||||||
|
|
||||||
this.done();
|
t.done();
|
||||||
});
|
|
||||||
rq.onerror = fail(this, "unexpected error")
|
|
||||||
});
|
});
|
||||||
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
|
},
|
||||||
|
document.title + " - pass negative numbers"
|
||||||
|
);
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
async_test(document.title + " - got value not set on exception").step(function(e) {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
if (!cursor)
|
if (!cursor)
|
||||||
{
|
{
|
||||||
assert_equals(count, 2, "count runs");
|
assert_equals(count, 2, "count runs");
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -175,14 +184,9 @@
|
||||||
cursor.advance(1);
|
cursor.advance(1);
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - got value not set on exception"
|
||||||
|
);
|
||||||
// Stop blocking the testing system from hereon
|
|
||||||
done();
|
|
||||||
}
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id=log></div>
|
|
||||||
|
|
|
@ -7,12 +7,7 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
var db, open;
|
function upgrade_func(t, db, tx) {
|
||||||
|
|
||||||
setup(function() {
|
|
||||||
open = indexedDB.open("testdb-" + new Date().getTime());
|
|
||||||
open.onupgradeneeded = function(e) {
|
|
||||||
db = e.target.result;
|
|
||||||
var objStore = db.createObjectStore("test");
|
var objStore = db.createObjectStore("test");
|
||||||
objStore.createIndex("index", "");
|
objStore.createIndex("index", "");
|
||||||
|
|
||||||
|
@ -21,21 +16,18 @@
|
||||||
objStore.add("pie", 1);
|
objStore.add("pie", 1);
|
||||||
objStore.add("pie", 4);
|
objStore.add("pie", 4);
|
||||||
objStore.add("taco", 2);
|
objStore.add("taco", 2);
|
||||||
};
|
}
|
||||||
},
|
|
||||||
{ explicit_done: true });
|
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
open.onsuccess = function() {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
async_test(document.title + " - advances").step(function(e) {
|
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 3, "count");
|
assert_equals(count, 3, "count");
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -63,17 +55,21 @@
|
||||||
count++;
|
count++;
|
||||||
cursor.advance(2);
|
cursor.advance(2);
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - advances"
|
||||||
|
);
|
||||||
|
|
||||||
async_test(document.title + " - advances backwards").step(function(e) {
|
indexeddb_test(
|
||||||
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor(null, "prev");
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor(null, "prev");
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 3, "count");
|
assert_equals(count, 3, "count");
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -101,18 +97,22 @@
|
||||||
count++;
|
count++;
|
||||||
cursor.advance(2);
|
cursor.advance(2);
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - advances backwards"
|
||||||
|
);
|
||||||
|
|
||||||
async_test(document.title + " - skip far forward").step(function(e) {
|
indexeddb_test(
|
||||||
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index")
|
var rq = db.transaction("test").objectStore("test").index("index")
|
||||||
.openCursor();
|
.openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 1, "count");
|
assert_equals(count, 1, "count");
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -130,19 +130,22 @@
|
||||||
count++;
|
count++;
|
||||||
cursor.advance(100000);
|
cursor.advance(100000);
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - skip far forward"
|
||||||
|
);
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
async_test(document.title + " - within range").step(function(e) {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index")
|
var rq = db.transaction("test").objectStore("test").index("index")
|
||||||
.openCursor(IDBKeyRange.lowerBound("cupcake", true));
|
.openCursor(IDBKeyRange.lowerBound("cupcake", true));
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 2, "count");
|
assert_equals(count, 2, "count");
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -165,19 +168,22 @@
|
||||||
count++;
|
count++;
|
||||||
cursor.advance(2);
|
cursor.advance(2);
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - within range"
|
||||||
|
);
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
async_test(document.title + " - within single key range").step(function(e) {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index")
|
var rq = db.transaction("test").objectStore("test").index("index")
|
||||||
.openCursor("pancake");
|
.openCursor("pancake");
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 1, "count");
|
assert_equals(count, 1, "count");
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -195,19 +201,22 @@
|
||||||
count++;
|
count++;
|
||||||
cursor.advance(1);
|
cursor.advance(1);
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - within single key range"
|
||||||
|
);
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
async_test(document.title + " - within single key range, with several results").step(function(e) {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index")
|
var rq = db.transaction("test").objectStore("test").index("index")
|
||||||
.openCursor("pie");
|
.openCursor("pie");
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 2, "count");
|
assert_equals(count, 2, "count");
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -230,14 +239,9 @@
|
||||||
count++;
|
count++;
|
||||||
cursor.advance(1);
|
cursor.advance(1);
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - within single key range, with several results"
|
||||||
|
);
|
||||||
// Stop blocking the testing system from hereon
|
|
||||||
done();
|
|
||||||
}
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="log"></div>
|
|
||||||
|
|
|
@ -9,39 +9,33 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
var db, open;
|
var store = [ { value: "cupcake", key: 5 },
|
||||||
var store = [ { value: "cupcake", key: 5 },
|
|
||||||
{ value: "pancake", key: 3 },
|
{ value: "pancake", key: 3 },
|
||||||
{ value: "pie", key: 1 },
|
{ value: "pie", key: 1 },
|
||||||
{ value: "pie", key: 4 },
|
{ value: "pie", key: 4 },
|
||||||
{ value: "taco", key: 2 } ];
|
{ value: "taco", key: 2 } ];
|
||||||
|
|
||||||
setup(function() {
|
function upgrade_func(t, db, tx) {
|
||||||
open = indexedDB.open('testdb-' + new Date().getTime());
|
var db, open;
|
||||||
open.onupgradeneeded = function(e) {
|
|
||||||
var os, i;
|
var os, i;
|
||||||
db = e.target.result;
|
|
||||||
os = db.createObjectStore("test");
|
os = db.createObjectStore("test");
|
||||||
os.createIndex("index", "");
|
os.createIndex("index", "");
|
||||||
|
|
||||||
for (i = 0; i < store.length; i++)
|
for (i = 0; i < store.length; i++)
|
||||||
os.add(store[i].value, store[i].key);
|
os.add(store[i].value, store[i].key);
|
||||||
};
|
}
|
||||||
},
|
|
||||||
{ explicit_done: true });
|
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
open.onsuccess = function() {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
|
|
||||||
async_test(document.title + " - continues").step(function(e) {
|
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 5, 'count');
|
assert_equals(count, 5, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -53,18 +47,22 @@
|
||||||
|
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - continues"
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
async_test(document.title + " - with given key").step(function(e) {
|
indexeddb_test(
|
||||||
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
var rq = db.transaction("test").objectStore("test").index("index").openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 3, 'count');
|
assert_equals(count, 3, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -94,19 +92,23 @@
|
||||||
|
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error")
|
rq.onerror = t.unreached_func("unexpected error")
|
||||||
});
|
},
|
||||||
|
document.title + " - with given key"
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
async_test(document.title + " - skip far forward").step(function(e) {
|
indexeddb_test(
|
||||||
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index")
|
var rq = db.transaction("test").objectStore("test").index("index")
|
||||||
.openCursor();
|
.openCursor();
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 1, 'count');
|
assert_equals(count, 1, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -125,19 +127,23 @@
|
||||||
cursor.continue([]); // Arrays are always bigger than strings
|
cursor.continue([]); // Arrays are always bigger than strings
|
||||||
|
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error2")
|
rq.onerror = t.unreached_func("unexpected error2")
|
||||||
});
|
},
|
||||||
|
document.title + " - skip far forward"
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
async_test(document.title + " - within range").step(function(e) {
|
indexeddb_test(
|
||||||
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index")
|
var rq = db.transaction("test").objectStore("test").index("index")
|
||||||
.openCursor(IDBKeyRange.lowerBound("cupcake", true));
|
.openCursor(IDBKeyRange.lowerBound("cupcake", true));
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 2, 'count');
|
assert_equals(count, 2, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -161,19 +167,23 @@
|
||||||
|
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error1")
|
rq.onerror = t.unreached_func("unexpected error1")
|
||||||
});
|
},
|
||||||
|
document.title + " - within range"
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
async_test(document.title + " - within single key range").step(function(e) {
|
indexeddb_test(
|
||||||
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index")
|
var rq = db.transaction("test").objectStore("test").index("index")
|
||||||
.openCursor("pancake");
|
.openCursor("pancake");
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 1, 'count');
|
assert_equals(count, 1, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -191,19 +201,22 @@
|
||||||
|
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error1")
|
rq.onerror = t.unreached_func("unexpected error1")
|
||||||
});
|
},
|
||||||
|
document.title + " - within single key range"
|
||||||
|
);
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
async_test(document.title + " - within single key range, with several results").step(function(e) {
|
upgrade_func,
|
||||||
|
function(t, db) {
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var rq = db.transaction("test").objectStore("test").index("index")
|
var rq = db.transaction("test").objectStore("test").index("index")
|
||||||
.openCursor("pie");
|
.openCursor("pie");
|
||||||
|
|
||||||
rq.onsuccess = this.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
assert_equals(count, 2, 'count');
|
assert_equals(count, 2, 'count');
|
||||||
this.done();
|
t.done();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -227,14 +240,9 @@
|
||||||
|
|
||||||
count++;
|
count++;
|
||||||
});
|
});
|
||||||
rq.onerror = fail(this, "unexpected error1")
|
rq.onerror = t.unreached_func("unexpected error1")
|
||||||
});
|
},
|
||||||
|
document.title + " - within single key range, with several results"
|
||||||
|
);
|
||||||
// Stop blocking the testing system from hereon
|
|
||||||
done();
|
|
||||||
}
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="log"></div>
|
|
||||||
|
|
|
@ -45,12 +45,12 @@ indexeddb_test(
|
||||||
|
|
||||||
store.deleteIndex("idx");
|
store.deleteIndex("idx");
|
||||||
});
|
});
|
||||||
txn.oncomplete = function() {
|
txn.oncomplete = t.step_func(function() {
|
||||||
assert_throws("TransactionInactiveError", function() {
|
assert_throws("TransactionInactiveError", function() {
|
||||||
cursor.continuePrimaryKey("A", 4);
|
cursor.continuePrimaryKey("A", 4);
|
||||||
}, "transaction-state check should precede deletion check");
|
}, "transaction-state check should precede deletion check");
|
||||||
t.done();
|
t.done();
|
||||||
};
|
});
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
"TransactionInactiveError v.s. InvalidStateError(deleted index)"
|
"TransactionInactiveError v.s. InvalidStateError(deleted index)"
|
||||||
|
@ -378,5 +378,3 @@ indexeddb_test(
|
||||||
"DataError(keys are larger then current one) in 'prev' direction"
|
"DataError(keys are larger then current one) in 'prev' direction"
|
||||||
);
|
);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="log"></div>
|
|
||||||
|
|
|
@ -16,6 +16,10 @@ async_test(function(t) {
|
||||||
|
|
||||||
open.onupgradeneeded = t.step_func(function() {
|
open.onupgradeneeded = t.step_func(function() {
|
||||||
var db = open.result;
|
var db = open.result;
|
||||||
|
t.add_cleanup(function() {
|
||||||
|
db.close();
|
||||||
|
indexedDB.deleteDatabase(db.name);
|
||||||
|
});
|
||||||
var store = db.createObjectStore('store');
|
var store = db.createObjectStore('store');
|
||||||
store.put('a', 1).onerror = t.unreached_func('put should not fail');
|
store.put('a', 1).onerror = t.unreached_func('put should not fail');
|
||||||
var request = store.openCursor();
|
var request = store.openCursor();
|
||||||
|
@ -60,6 +64,10 @@ async_test(function(t) {
|
||||||
|
|
||||||
open.onupgradeneeded = t.step_func(function() {
|
open.onupgradeneeded = t.step_func(function() {
|
||||||
var db = open.result;
|
var db = open.result;
|
||||||
|
t.add_cleanup(function() {
|
||||||
|
db.close();
|
||||||
|
indexedDB.deleteDatabase(db.name);
|
||||||
|
});
|
||||||
var store = db.createObjectStore('store', {keyPath: 'pk'});
|
var store = db.createObjectStore('store', {keyPath: 'pk'});
|
||||||
var index = store.createIndex('index', 'ik', {multiEntry: true});
|
var index = store.createIndex('index', 'ik', {multiEntry: true});
|
||||||
store.put({pk: 'a', ik: [1,2,3]}).onerror =
|
store.put({pk: 'a', ik: [1,2,3]}).onerror =
|
||||||
|
|
|
@ -15,40 +15,28 @@
|
||||||
<script src="support.js"></script>
|
<script src="support.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
var records = [ 1337, "Alice", "Bob", "Bob", "Greg", "Åke", ["Anne"] ];
|
var records = [ 1337, "Alice", "Bob", "Bob", "Greg", "Åke", ["Anne"] ];
|
||||||
var directions = ["next", "prev", "nextunique", "prevunique"];
|
var cases = [
|
||||||
var tests = {};
|
{dir: 'next', expect: ['Alice:1', 'Bob:2', 'Bob:3', 'Greg:4']},
|
||||||
|
{dir: 'prev', expect: ['Greg:4', 'Bob:3', 'Bob:2', 'Alice:1']},
|
||||||
|
{dir: 'nextunique', expect: ['Alice:1', 'Bob:2', 'Greg:4']},
|
||||||
|
{dir: 'prevunique', expect: ['Greg:4', 'Bob:2', 'Alice:1']}
|
||||||
|
];
|
||||||
|
|
||||||
directions.forEach(function(dir) {
|
|
||||||
tests[dir] = async_test(document.title + ' - ' + dir);
|
|
||||||
});
|
|
||||||
|
|
||||||
var open_rq = indexedDB.open("testdb-" + new Date().getTime() + Math.random());
|
cases.forEach(function(testcase) {
|
||||||
|
var dir = testcase.dir;
|
||||||
open_rq.onupgradeneeded = function(e) {
|
var expect = testcase.expect;
|
||||||
var objStore = e.target.result.createObjectStore("test");
|
indexeddb_test(
|
||||||
|
function(t, db, tx) {
|
||||||
|
var objStore = db.createObjectStore("test");
|
||||||
objStore.createIndex("idx", "name");
|
objStore.createIndex("idx", "name");
|
||||||
|
|
||||||
for (var i = 0; i < records.length; i++)
|
for (var i = 0; i < records.length; i++)
|
||||||
objStore.add({ name: records[i] }, i);
|
objStore.add({ name: records[i] }, i);
|
||||||
};
|
},
|
||||||
|
function(t, db) {
|
||||||
open_rq.onsuccess = function(e) {
|
|
||||||
var db = e.target.result;
|
|
||||||
db.onerror = fail_helper("db.onerror");
|
|
||||||
|
|
||||||
|
|
||||||
// The tests
|
|
||||||
testdir('next', ['Alice:1', 'Bob:2', 'Bob:3', 'Greg:4']);
|
|
||||||
testdir('prev', ['Greg:4', 'Bob:3', 'Bob:2', 'Alice:1']);
|
|
||||||
testdir('nextunique', ['Alice:1', 'Bob:2', 'Greg:4']);
|
|
||||||
testdir('prevunique', ['Greg:4', 'Bob:2', 'Alice:1']);
|
|
||||||
|
|
||||||
|
|
||||||
// Test function
|
|
||||||
function testdir(dir, expect) {
|
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var t = tests[dir];
|
|
||||||
var rq = db.transaction("test").objectStore("test").index("idx").openCursor(IDBKeyRange.bound("AA", "ZZ"), dir);
|
var rq = db.transaction("test").objectStore("test").index("idx").openCursor(IDBKeyRange.bound("AA", "ZZ"), dir);
|
||||||
rq.onsuccess = t.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -65,19 +53,8 @@
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
assert_unreached("rq.onerror - " + e.message);
|
assert_unreached("rq.onerror - " + e.message);
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
};
|
document.title + ' - ' + dir
|
||||||
|
)
|
||||||
// Fail handling
|
});
|
||||||
function fail_helper(name) {
|
|
||||||
return function() {
|
|
||||||
directions.forEach(function(dir) {
|
|
||||||
tests[dir].step(function() { assert_unreached(name); });
|
|
||||||
});
|
|
||||||
};
|
|
||||||
}
|
|
||||||
open_rq.onblocked = fail_helper('open_rq.onblocked');
|
|
||||||
open_rq.onerror = fail_helper('open_rq.onerror');
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id=log> </div>
|
|
||||||
|
|
|
@ -13,40 +13,27 @@
|
||||||
<script src="support.js"></script>
|
<script src="support.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
var records = [ "Alice", "Bob", "Bob", "Greg" ];
|
var records = [ "Alice", "Bob", "Bob", "Greg" ];
|
||||||
var directions = ["next", "prev", "nextunique", "prevunique"];
|
var cases = [
|
||||||
var tests = {};
|
{dir: 'next', expect: ['Alice:0', 'Bob:1', 'Bob:2', 'Greg:3']},
|
||||||
|
{dir: 'prev', expect: ['Greg:3', 'Bob:2', 'Bob:1', 'Alice:0']},
|
||||||
|
{dir: 'nextunique', expect: ['Alice:0', 'Bob:1', 'Greg:3']},
|
||||||
|
{dir: 'prevunique', expect: ['Greg:3', 'Bob:1', 'Alice:0']},
|
||||||
|
];
|
||||||
|
|
||||||
directions.forEach(function(dir) {
|
cases.forEach(function(testcase) {
|
||||||
tests[dir] = async_test(document.title + ' - ' + dir);
|
var dir = testcase.dir;
|
||||||
});
|
var expect = testcase.expect;
|
||||||
|
indexeddb_test(
|
||||||
var open_rq = indexedDB.open("testdb-" + new Date().getTime() + Math.random());
|
function(t, db, tx) {
|
||||||
|
var objStore = db.createObjectStore("test");
|
||||||
open_rq.onupgradeneeded = function(e) {
|
|
||||||
var objStore = e.target.result.createObjectStore("test");
|
|
||||||
objStore.createIndex("idx", "name");
|
objStore.createIndex("idx", "name");
|
||||||
|
|
||||||
for (var i = 0; i < records.length; i++)
|
for (var i = 0; i < records.length; i++)
|
||||||
objStore.add({ name: records[i] }, i);
|
objStore.add({ name: records[i] }, i);
|
||||||
};
|
},
|
||||||
|
function(t, db) {
|
||||||
open_rq.onsuccess = function(e) {
|
|
||||||
var db = e.target.result;
|
|
||||||
db.onerror = fail_helper("db.onerror");
|
|
||||||
|
|
||||||
|
|
||||||
// The tests
|
|
||||||
testdir('next', ['Alice:0', 'Bob:1', 'Bob:2', 'Greg:3']);
|
|
||||||
testdir('prev', ['Greg:3', 'Bob:2', 'Bob:1', 'Alice:0']);
|
|
||||||
testdir('nextunique', ['Alice:0', 'Bob:1', 'Greg:3']);
|
|
||||||
testdir('prevunique', ['Greg:3', 'Bob:1', 'Alice:0']);
|
|
||||||
|
|
||||||
|
|
||||||
// Test function
|
|
||||||
function testdir(dir, expect) {
|
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var t = tests[dir];
|
|
||||||
var rq = db.transaction("test").objectStore("test").index("idx").openCursor(undefined, dir);
|
var rq = db.transaction("test").objectStore("test").index("idx").openCursor(undefined, dir);
|
||||||
rq.onsuccess = t.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -63,19 +50,8 @@
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
assert_unreached("rq.onerror - " + e.message);
|
assert_unreached("rq.onerror - " + e.message);
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
};
|
document.title + ' - ' + dir
|
||||||
|
);
|
||||||
// Fail handling
|
});
|
||||||
function fail_helper(name) {
|
|
||||||
return function() {
|
|
||||||
directions.forEach(function(dir) {
|
|
||||||
tests[dir].step(function() { assert_unreached(name); });
|
|
||||||
});
|
|
||||||
};
|
|
||||||
}
|
|
||||||
open_rq.onblocked = fail_helper('open_rq.onblocked');
|
|
||||||
open_rq.onerror = fail_helper('open_rq.onerror');
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id=log> </div>
|
|
||||||
|
|
|
@ -11,39 +11,26 @@
|
||||||
<script src="support.js"></script>
|
<script src="support.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
var records = [ 1337, "Alice", "Bob", "Greg", "Åke", ["Anne"] ];
|
var records = [ 1337, "Alice", "Bob", "Greg", "Åke", ["Anne"] ];
|
||||||
var directions = ["next", "prev", "nextunique", "prevunique"];
|
var directions = ["next", "prev", "nextunique", "prevunique"];
|
||||||
var tests = {};
|
var cases = [
|
||||||
|
{dir: 'next', expect: ['Alice', 'Bob', 'Greg']},
|
||||||
directions.forEach(function(dir) {
|
{dir: 'prev', expect: ['Greg', 'Bob', 'Alice']},
|
||||||
tests[dir] = async_test(document.title + ' - ' + dir);
|
{dir: 'nextunique', expect: ['Alice', 'Bob', 'Greg']},
|
||||||
});
|
{dir: 'prevunique', expect: ['Greg', 'Bob', 'Alice']},
|
||||||
|
];
|
||||||
var open_rq = indexedDB.open("testdb-" + new Date().getTime() + Math.random());
|
|
||||||
|
|
||||||
open_rq.onupgradeneeded = function(e) {
|
|
||||||
var objStore = e.target.result.createObjectStore("test");
|
|
||||||
|
|
||||||
|
cases.forEach(function(testcase) {
|
||||||
|
var dir = testcase.dir;
|
||||||
|
var expect = testcase.expect;
|
||||||
|
indexeddb_test(
|
||||||
|
function(t, db, tx) {
|
||||||
|
var objStore = db.createObjectStore("test");
|
||||||
for (var i = 0; i < records.length; i++)
|
for (var i = 0; i < records.length; i++)
|
||||||
objStore.add(records[i], records[i]);
|
objStore.add(records[i], records[i]);
|
||||||
};
|
},
|
||||||
|
function(t, db) {
|
||||||
open_rq.onsuccess = function(e) {
|
|
||||||
var db = e.target.result;
|
|
||||||
db.onerror = fail_helper("db.onerror");
|
|
||||||
|
|
||||||
|
|
||||||
// The tests
|
|
||||||
testdir('next', ['Alice', 'Bob', 'Greg']);
|
|
||||||
testdir('prev', ['Greg', 'Bob', 'Alice']);
|
|
||||||
testdir('nextunique', ['Alice', 'Bob', 'Greg']);
|
|
||||||
testdir('prevunique', ['Greg', 'Bob', 'Alice']);
|
|
||||||
|
|
||||||
|
|
||||||
// Test function
|
|
||||||
function testdir(dir, expect) {
|
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var t = tests[dir];
|
|
||||||
var rq = db.transaction("test").objectStore("test").openCursor(IDBKeyRange.bound("AA", "ZZ"), dir);
|
var rq = db.transaction("test").objectStore("test").openCursor(IDBKeyRange.bound("AA", "ZZ"), dir);
|
||||||
rq.onsuccess = t.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -60,19 +47,8 @@
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
assert_unreached("rq.onerror - " + e.message);
|
assert_unreached("rq.onerror - " + e.message);
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
};
|
document.title + ' - ' + dir
|
||||||
|
);
|
||||||
// Fail handling
|
});
|
||||||
function fail_helper(name) {
|
|
||||||
return function() {
|
|
||||||
directions.forEach(function(dir) {
|
|
||||||
tests[dir].step(function() { assert_unreached(name); });
|
|
||||||
});
|
|
||||||
};
|
|
||||||
}
|
|
||||||
open_rq.onblocked = fail_helper('open_rq.onblocked');
|
|
||||||
open_rq.onerror = fail_helper('open_rq.onerror');
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id=log> </div>
|
|
||||||
|
|
|
@ -13,39 +13,26 @@
|
||||||
<script src="support.js"></script>
|
<script src="support.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
var records = [ "Alice", "Bob", "Greg" ];
|
var records = [ "Alice", "Bob", "Greg" ];
|
||||||
var directions = ["next", "prev", "nextunique", "prevunique"];
|
var directions = ["next", "prev", "nextunique", "prevunique"];
|
||||||
var tests = {};
|
var cases = [
|
||||||
|
{dir: 'next', expect: ['Alice', 'Bob', 'Greg']},
|
||||||
directions.forEach(function(dir) {
|
{dir: 'prev', expect: ['Greg', 'Bob', 'Alice']},
|
||||||
tests[dir] = async_test(document.title + ' - ' + dir);
|
{dir: 'nextunique', expect: ['Alice', 'Bob', 'Greg']},
|
||||||
});
|
{dir: 'prevunique', expect: ['Greg', 'Bob', 'Alice']},
|
||||||
|
];
|
||||||
var open_rq = indexedDB.open("testdb-" + new Date().getTime() + Math.random());
|
|
||||||
|
|
||||||
open_rq.onupgradeneeded = function(e) {
|
|
||||||
var objStore = e.target.result.createObjectStore("test");
|
|
||||||
|
|
||||||
|
cases.forEach(function(testcase) {
|
||||||
|
var dir = testcase.dir;
|
||||||
|
var expect = testcase.expect;
|
||||||
|
indexeddb_test(
|
||||||
|
function(t, db, tx) {
|
||||||
|
var objStore = db.createObjectStore("test");
|
||||||
for (var i = 0; i < records.length; i++)
|
for (var i = 0; i < records.length; i++)
|
||||||
objStore.add(records[i], records[i]);
|
objStore.add(records[i], records[i]);
|
||||||
};
|
},
|
||||||
|
function(t, db) {
|
||||||
open_rq.onsuccess = function(e) {
|
|
||||||
var db = e.target.result;
|
|
||||||
db.onerror = fail_helper("db.onerror");
|
|
||||||
|
|
||||||
|
|
||||||
// The tests
|
|
||||||
testdir('next', ['Alice', 'Bob', 'Greg']);
|
|
||||||
testdir('prev', ['Greg', 'Bob', 'Alice']);
|
|
||||||
testdir('nextunique', ['Alice', 'Bob', 'Greg']);
|
|
||||||
testdir('prevunique', ['Greg', 'Bob', 'Alice']);
|
|
||||||
|
|
||||||
|
|
||||||
// Test function
|
|
||||||
function testdir(dir, expect) {
|
|
||||||
var count = 0;
|
var count = 0;
|
||||||
var t = tests[dir];
|
|
||||||
var rq = db.transaction("test").objectStore("test").openCursor(undefined, dir);
|
var rq = db.transaction("test").objectStore("test").openCursor(undefined, dir);
|
||||||
rq.onsuccess = t.step_func(function(e) {
|
rq.onsuccess = t.step_func(function(e) {
|
||||||
var cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
|
@ -62,19 +49,8 @@
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
assert_unreached("rq.onerror - " + e.message);
|
assert_unreached("rq.onerror - " + e.message);
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
};
|
document.title + ' - ' + dir
|
||||||
|
);
|
||||||
// Fail handling
|
});
|
||||||
function fail_helper(name) {
|
|
||||||
return function() {
|
|
||||||
directions.forEach(function(dir) {
|
|
||||||
tests[dir].step(function() { assert_unreached(name); });
|
|
||||||
});
|
|
||||||
};
|
|
||||||
}
|
|
||||||
open_rq.onblocked = fail_helper('open_rq.onblocked');
|
|
||||||
open_rq.onerror = fail_helper('open_rq.onerror');
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id=log> </div>
|
|
||||||
|
|
|
@ -17,6 +17,11 @@
|
||||||
|
|
||||||
open_rq.onupgradeneeded = function(e) {
|
open_rq.onupgradeneeded = function(e) {
|
||||||
db = e.target.result;
|
db = e.target.result;
|
||||||
|
t.add_cleanup(function() {
|
||||||
|
db.close();
|
||||||
|
indexedDB.deleteDatabase(db.name);
|
||||||
|
});
|
||||||
|
|
||||||
var objStore = db.createObjectStore("test");
|
var objStore = db.createObjectStore("test");
|
||||||
|
|
||||||
objStore.add("data", "key");
|
objStore.add("data", "key");
|
||||||
|
@ -69,5 +74,3 @@
|
||||||
cursor_direction("prevunique", "prevunique");
|
cursor_direction("prevunique", "prevunique");
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="log"></div>
|
|
||||||
|
|
|
@ -6,27 +6,23 @@
|
||||||
<script src="support.js"></script>
|
<script src="support.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
setup({ explicit_done: true });
|
function cursor_source_test(test_name, name, stringified_object, cursor_rq_func) {
|
||||||
|
indexeddb_test(
|
||||||
var db;
|
function(t, db, tx) {
|
||||||
var open_rq = indexedDB.open('testdb-' + new Date().getTime());
|
|
||||||
open_rq.onupgradeneeded = function(e) {
|
|
||||||
db = e.target.result;
|
|
||||||
var objStore = db.createObjectStore("my_objectstore");
|
var objStore = db.createObjectStore("my_objectstore");
|
||||||
objStore.createIndex("my_index", "");
|
objStore.createIndex("my_index", "");
|
||||||
|
|
||||||
objStore.add("data", 1);
|
objStore.add("data", 1);
|
||||||
objStore.add("data2", 2);
|
objStore.add("data2", 2);
|
||||||
};
|
},
|
||||||
|
function(t, db) {
|
||||||
|
var cursor_rq = cursor_rq_func(db);
|
||||||
|
|
||||||
function cursor_source(name, stringified_object, cursor_rq) {
|
cursor_rq.onsuccess = t.step_func(function(e) {
|
||||||
var cursor;
|
|
||||||
|
|
||||||
cursor_rq.onsuccess = this.step_func(function(e) {
|
|
||||||
if (!e.target.result) {
|
if (!e.target.result) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
cursor = e.target.result;
|
var cursor = e.target.result;
|
||||||
assert_readonly(cursor, 'source');
|
assert_readonly(cursor, 'source');
|
||||||
|
|
||||||
// Direct try
|
// Direct try
|
||||||
|
@ -37,32 +33,34 @@
|
||||||
cursor.continue();
|
cursor.continue();
|
||||||
});
|
});
|
||||||
|
|
||||||
cursor_rq.transaction.oncomplete = this.step_func(function(e) {
|
cursor_rq.transaction.oncomplete = t.step_func(function(e) {
|
||||||
this.done();
|
t.done();
|
||||||
});
|
});
|
||||||
|
|
||||||
cursor_rq.transaction.onerror = this.step_func(function(e) {
|
cursor_rq.transaction.onerror = t.step_func(function(e) {
|
||||||
assert_unreached("Transaction got error. " + (e.target.error ? e.target.error.name : "unknown"));
|
assert_unreached("Transaction got error. " + (e.target.error ? e.target.error.name : "unknown"));
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
|
test_name
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
open_rq.onsuccess = function() {
|
cursor_source_test(
|
||||||
async_test(document.title + ' - IDBObjectStore').step(function() {
|
document.title + ' - IDBObjectStore',
|
||||||
cursor_source.call(this, "my_objectstore", "[object IDBObjectStore]", db.transaction("my_objectstore")
|
"my_objectstore",
|
||||||
|
"[object IDBObjectStore]",
|
||||||
|
function(db) { return db.transaction("my_objectstore")
|
||||||
.objectStore("my_objectstore")
|
.objectStore("my_objectstore")
|
||||||
.openCursor());
|
.openCursor(); }
|
||||||
});
|
);
|
||||||
|
|
||||||
async_test(document.title + ' - IDBIndex').step(function() {
|
cursor_source_test(
|
||||||
cursor_source.call(this, "my_index", "[object IDBIndex]", db.transaction("my_objectstore")
|
document.title + ' - IDBIndex',
|
||||||
|
"my_index",
|
||||||
|
"[object IDBIndex]",
|
||||||
|
function(db) { return db.transaction("my_objectstore")
|
||||||
.objectStore("my_objectstore")
|
.objectStore("my_objectstore")
|
||||||
.index("my_index")
|
.index("my_index")
|
||||||
.openCursor());
|
.openCursor(); }
|
||||||
});
|
);
|
||||||
|
|
||||||
done();
|
|
||||||
};
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="log"></div>
|
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
var open_rq = createdb(t);
|
var open_rq = createdb(t);
|
||||||
open_rq.onupgradeneeded = function(e) {
|
open_rq.onupgradeneeded = function(e) {
|
||||||
db = e.target.result;
|
db = e.target.result;
|
||||||
|
t.add_cleanup(function() { db.close(); indexedDB.deleteDatabase(db.name); });
|
||||||
var objStore = db.createObjectStore("test", { keyPath: "key" });
|
var objStore = db.createObjectStore("test", { keyPath: "key" });
|
||||||
|
|
||||||
for (var i = 0; i < 500; i++)
|
for (var i = 0; i < 500; i++)
|
||||||
|
@ -106,5 +107,3 @@
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="log"> </div>
|
|
||||||
|
|
|
@ -18,6 +18,7 @@
|
||||||
var open_rq = createdb(t);
|
var open_rq = createdb(t);
|
||||||
open_rq.onupgradeneeded = function(e) {
|
open_rq.onupgradeneeded = function(e) {
|
||||||
db = e.target.result;
|
db = e.target.result;
|
||||||
|
t.add_cleanup(function() { db.close(); indexedDB.deleteDatabase(db.name); });
|
||||||
var objStore = db.createObjectStore("test", {keyPath:"pKey"});
|
var objStore = db.createObjectStore("test", {keyPath:"pKey"});
|
||||||
|
|
||||||
for (var i = 0; i < records.length; i++)
|
for (var i = 0; i < records.length; i++)
|
||||||
|
@ -47,5 +48,3 @@
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="log"> </div>
|
|
||||||
|
|
|
@ -18,6 +18,7 @@
|
||||||
var open_rq = createdb(t);
|
var open_rq = createdb(t);
|
||||||
open_rq.onupgradeneeded = function(e) {
|
open_rq.onupgradeneeded = function(e) {
|
||||||
db = e.target.result;
|
db = e.target.result;
|
||||||
|
t.add_cleanup(function() { db.close(); indexedDB.deleteDatabase(db.name); });
|
||||||
var objStore = db.createObjectStore("test", {keyPath:"pKey"});
|
var objStore = db.createObjectStore("test", {keyPath:"pKey"});
|
||||||
|
|
||||||
for (var i = 0; i < records.length; i++)
|
for (var i = 0; i < records.length; i++)
|
||||||
|
@ -47,5 +48,3 @@
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="log"> </div>
|
|
||||||
|
|
|
@ -33,6 +33,7 @@ open_rq.onsuccess = function(e) {
|
||||||
assert_equals(blocked_fired, 1, 'block event fired #')
|
assert_equals(blocked_fired, 1, 'block event fired #')
|
||||||
assert_equals(upgradeneeded_fired, 2, 'second upgradeneeded event fired #')
|
assert_equals(upgradeneeded_fired, 2, 'second upgradeneeded event fired #')
|
||||||
|
|
||||||
|
rq.result.close();
|
||||||
t.done();
|
t.done();
|
||||||
});
|
});
|
||||||
rq.onerror = fail(t, 'Unexpected database deletion error');
|
rq.onerror = fail(t, 'Unexpected database deletion error');
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<meta charset=utf-8>
|
||||||
|
<title>IDBFactory deleteDatabase(): request properties on success</title>
|
||||||
|
<link rel="help" href="https://w3c.github.io/IndexedDB/#dom-idbfactory-deleteDatabase">
|
||||||
|
<script src=/resources/testharness.js></script>
|
||||||
|
<script src=/resources/testharnessreport.js></script>
|
||||||
|
<script src=support.js></script>
|
||||||
|
<script>
|
||||||
|
|
||||||
|
async_test(t => {
|
||||||
|
const dbname = document.location + '-' + t.name;
|
||||||
|
const rq = indexedDB.deleteDatabase(dbname);
|
||||||
|
rq.onerror = t.unreached_func('deleteDatabase should succeed');
|
||||||
|
rq.onsuccess = t.step_func(() => {
|
||||||
|
assert_equals(
|
||||||
|
rq.readyState, 'done',
|
||||||
|
'request done flag should be set on success');
|
||||||
|
assert_equals(
|
||||||
|
rq.result, undefined,
|
||||||
|
'request result should still be set to undefined on success');
|
||||||
|
assert_equals(
|
||||||
|
rq.error, null,
|
||||||
|
'request error should be null on success');
|
||||||
|
t.done();
|
||||||
|
});
|
||||||
|
}, 'Properties of IDBOpenDBRequest during IDBFactory deleteDatabase()');
|
||||||
|
|
||||||
|
</script>
|
|
@ -0,0 +1,66 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<meta charset=utf-8>
|
||||||
|
<title>IDBFactory open(): request properties on error</title>
|
||||||
|
<link rel="help" href="https://w3c.github.io/IndexedDB/#dom-idbfactory-open">
|
||||||
|
<script src=/resources/testharness.js></script>
|
||||||
|
<script src=/resources/testharnessreport.js></script>
|
||||||
|
<script src=support.js></script>
|
||||||
|
<script>
|
||||||
|
|
||||||
|
let saw_abort = false;
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
|
(t, db, tx, rq) => {
|
||||||
|
const store = db.createObjectStore('store');
|
||||||
|
store.put({name: 'a'}, 1);
|
||||||
|
store.put({name: 'a'}, 2);
|
||||||
|
store.createIndex('index', 'name', {unique: true});
|
||||||
|
|
||||||
|
assert_equals(
|
||||||
|
rq.readyState, 'done',
|
||||||
|
'request done flag should be set during upgradeneeded');
|
||||||
|
assert_equals(
|
||||||
|
rq.result, db,
|
||||||
|
'request result should be set (to connection) during upgradeneeded');
|
||||||
|
assert_equals(
|
||||||
|
rq.error, null,
|
||||||
|
'request result should be null during upgradeneeded');
|
||||||
|
|
||||||
|
tx.oncomplete = t.unreached_func('transaction should abort');
|
||||||
|
tx.onabort = t.step_func(() => {
|
||||||
|
saw_abort = true;
|
||||||
|
|
||||||
|
assert_equals(
|
||||||
|
rq.readyState, 'done',
|
||||||
|
'request done flag should still be set during abort');
|
||||||
|
|
||||||
|
// Chrome is flaky here. See: https://crbug.com/723846
|
||||||
|
/*
|
||||||
|
assert_equals(
|
||||||
|
rq.result, db,
|
||||||
|
'request result should still be set (to connection) during abort');
|
||||||
|
assert_equals(
|
||||||
|
rq.error, null,
|
||||||
|
'request result should still be null during abort');
|
||||||
|
*/
|
||||||
|
});
|
||||||
|
|
||||||
|
rq.onerror = t.step_func(() => {
|
||||||
|
assert_true(saw_abort, 'abort event should fire before error');
|
||||||
|
assert_equals(
|
||||||
|
rq.readyState, 'done',
|
||||||
|
'request done flag should be set on error');
|
||||||
|
assert_equals(
|
||||||
|
rq.result, undefined,
|
||||||
|
'request result should be undefined on error');
|
||||||
|
assert_equals(
|
||||||
|
rq.error.name, 'AbortError',
|
||||||
|
'request error should be AbortError on error');
|
||||||
|
t.done();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
(t, db) => {},
|
||||||
|
'Properties of IDBOpenDBRequest during failed IDBFactory open()',
|
||||||
|
{upgrade_will_abort: true});
|
||||||
|
|
||||||
|
</script>
|
|
@ -0,0 +1,54 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<meta charset=utf-8>
|
||||||
|
<title>IDBFactory open(): request properties on success</title>
|
||||||
|
<link rel="help" href="https://w3c.github.io/IndexedDB/#dom-idbfactory-open">
|
||||||
|
<script src=/resources/testharness.js></script>
|
||||||
|
<script src=/resources/testharnessreport.js></script>
|
||||||
|
<script src=support.js></script>
|
||||||
|
<script>
|
||||||
|
|
||||||
|
let saw_complete = false;
|
||||||
|
|
||||||
|
indexeddb_test(
|
||||||
|
(t, db, tx, rq) => {
|
||||||
|
assert_equals(
|
||||||
|
rq.readyState, 'done',
|
||||||
|
'request done flag should be set during upgradeneeded');
|
||||||
|
assert_equals(
|
||||||
|
rq.result, db,
|
||||||
|
'request result should be set (to connection) during upgradeneeded');
|
||||||
|
assert_equals(
|
||||||
|
rq.error, null,
|
||||||
|
'request result should be null during upgradeneeded');
|
||||||
|
|
||||||
|
tx.onabort = t.unreached_func('transaction should complete');
|
||||||
|
tx.oncomplete = t.step_func(() => {
|
||||||
|
saw_complete = true;
|
||||||
|
|
||||||
|
assert_equals(
|
||||||
|
rq.readyState, 'done',
|
||||||
|
'request done flag should still be set during complete');
|
||||||
|
assert_equals(
|
||||||
|
rq.result, db,
|
||||||
|
'request result should still be set (to connection) during complete');
|
||||||
|
assert_equals(
|
||||||
|
rq.error, null,
|
||||||
|
'request result should still be null during complete');
|
||||||
|
});
|
||||||
|
},
|
||||||
|
(t, db, rq) => {
|
||||||
|
assert_true(saw_complete, 'complete event should fire before success');
|
||||||
|
assert_equals(
|
||||||
|
rq.readyState, 'done',
|
||||||
|
'request done flag should be set on success');
|
||||||
|
assert_equals(
|
||||||
|
rq.result, db,
|
||||||
|
'request result should still be set (to connection) on success');
|
||||||
|
assert_equals(
|
||||||
|
rq.error, null,
|
||||||
|
'request error should be null on success');
|
||||||
|
t.done();
|
||||||
|
},
|
||||||
|
'Properties of IDBOpenDBRequest during successful IDBFactory open()');
|
||||||
|
|
||||||
|
</script>
|
|
@ -81,6 +81,8 @@
|
||||||
});
|
});
|
||||||
idx.getKey("Sicking").onsuccess = this.step_func(function(e) {
|
idx.getKey("Sicking").onsuccess = this.step_func(function(e) {
|
||||||
assert_equals(e.target.result, undefined, "getKey(Sicking)");
|
assert_equals(e.target.result, undefined, "getKey(Sicking)");
|
||||||
|
|
||||||
|
db3.close();
|
||||||
this.done();
|
this.done();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -51,6 +51,8 @@
|
||||||
count_done++;
|
count_done++;
|
||||||
|
|
||||||
assert_equals(count_done, 3, "count_done");
|
assert_equals(count_done, 3, "count_done");
|
||||||
|
|
||||||
|
db2.close();
|
||||||
this.done();
|
this.done();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -17,6 +17,7 @@
|
||||||
var open_rq2 = window.indexedDB.open(db.name);
|
var open_rq2 = window.indexedDB.open(db.name);
|
||||||
open_rq2.onsuccess = this.step_func(function(e) {
|
open_rq2.onsuccess = this.step_func(function(e) {
|
||||||
assert_equals(e.target.result.version, 13, "db.version")
|
assert_equals(e.target.result.version, 13, "db.version")
|
||||||
|
e.target.result.close();
|
||||||
this.done();
|
this.done();
|
||||||
});
|
});
|
||||||
open_rq2.onupgradeneeded = fail(this, 'Unexpected upgradeneeded')
|
open_rq2.onupgradeneeded = fail(this, 'Unexpected upgradeneeded')
|
||||||
|
|
|
@ -8,13 +8,14 @@
|
||||||
<script>
|
<script>
|
||||||
var open_rq = createdb(async_test(), undefined, 13);
|
var open_rq = createdb(async_test(), undefined, 13);
|
||||||
var did_upgrade = false;
|
var did_upgrade = false;
|
||||||
|
var open_rq2;
|
||||||
|
|
||||||
open_rq.onupgradeneeded = function() {};
|
open_rq.onupgradeneeded = function() {};
|
||||||
open_rq.onsuccess = function(e) {
|
open_rq.onsuccess = function(e) {
|
||||||
var db = e.target.result;
|
var db = e.target.result;
|
||||||
db.close();
|
db.close();
|
||||||
|
|
||||||
var open_rq2 = window.indexedDB.open(db.name, 14);
|
open_rq2 = window.indexedDB.open(db.name, 14);
|
||||||
open_rq2.onupgradeneeded = function() {};
|
open_rq2.onupgradeneeded = function() {};
|
||||||
open_rq2.onsuccess = this.step_func(open_previous_db);
|
open_rq2.onsuccess = this.step_func(open_previous_db);
|
||||||
open_rq2.onerror = fail(this, 'Unexpected error')
|
open_rq2.onerror = fail(this, 'Unexpected error')
|
||||||
|
@ -24,6 +25,7 @@
|
||||||
var open_rq3 = window.indexedDB.open(e.target.result.name, 13);
|
var open_rq3 = window.indexedDB.open(e.target.result.name, 13);
|
||||||
open_rq3.onerror = this.step_func(function(e) {
|
open_rq3.onerror = this.step_func(function(e) {
|
||||||
assert_equals(e.target.error.name, 'VersionError', 'e.target.error.name')
|
assert_equals(e.target.error.name, 'VersionError', 'e.target.error.name')
|
||||||
|
open_rq2.result.close();
|
||||||
this.done();
|
this.done();
|
||||||
});
|
});
|
||||||
open_rq3.onupgradeneeded = fail(this, 'Unexpected upgradeneeded')
|
open_rq3.onupgradeneeded = fail(this, 'Unexpected upgradeneeded')
|
||||||
|
|
|
@ -8,13 +8,14 @@
|
||||||
<script>
|
<script>
|
||||||
var open_rq = createdb(async_test(), undefined, 13);
|
var open_rq = createdb(async_test(), undefined, 13);
|
||||||
var did_upgrade = false;
|
var did_upgrade = false;
|
||||||
|
var open_rq2;
|
||||||
|
|
||||||
open_rq.onupgradeneeded = function() {};
|
open_rq.onupgradeneeded = function() {};
|
||||||
open_rq.onsuccess = function(e) {
|
open_rq.onsuccess = function(e) {
|
||||||
var db = e.target.result;
|
var db = e.target.result;
|
||||||
db.close();
|
db.close();
|
||||||
|
|
||||||
var open_rq2 = window.indexedDB.open(db.name, 14);
|
open_rq2 = window.indexedDB.open(db.name, 14);
|
||||||
open_rq2.onupgradeneeded = function() {
|
open_rq2.onupgradeneeded = function() {
|
||||||
did_upgrade = true;
|
did_upgrade = true;
|
||||||
};
|
};
|
||||||
|
@ -26,6 +27,8 @@
|
||||||
var open_rq3 = window.indexedDB.open(e.target.result.name);
|
var open_rq3 = window.indexedDB.open(e.target.result.name);
|
||||||
open_rq3.onsuccess = this.step_func(function(e) {
|
open_rq3.onsuccess = this.step_func(function(e) {
|
||||||
assert_equals(e.target.result.version, 14, "db.version")
|
assert_equals(e.target.result.version, 14, "db.version")
|
||||||
|
open_rq2.result.close();
|
||||||
|
open_rq3.result.close();
|
||||||
this.done();
|
this.done();
|
||||||
});
|
});
|
||||||
open_rq3.onupgradeneeded = fail(this, 'Unexpected upgradeneeded')
|
open_rq3.onupgradeneeded = fail(this, 'Unexpected upgradeneeded')
|
||||||
|
|
|
@ -2,26 +2,14 @@
|
||||||
<title>IndexedDB: Test IDBIndex.getAll.</title>
|
<title>IndexedDB: Test IDBIndex.getAll.</title>
|
||||||
<script src="/resources/testharness.js"></script>
|
<script src="/resources/testharness.js"></script>
|
||||||
<script src="/resources/testharnessreport.js"></script>
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="support.js"></script>
|
||||||
<script>
|
<script>
|
||||||
setup({explicit_done: true});
|
|
||||||
|
|
||||||
var alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
|
var alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
|
||||||
var ALPHABET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split('');
|
var ALPHABET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split('');
|
||||||
|
|
||||||
function doSetup(dbName, dbVersion, onsuccess) {
|
function getall_test(func, name) {
|
||||||
var delete_request = indexedDB.deleteDatabase(dbName);
|
indexeddb_test(
|
||||||
delete_request.onerror = function() {
|
function(t, connection, tx) {
|
||||||
assert_unreached('deleteDatabase should not fail');
|
|
||||||
};
|
|
||||||
delete_request.onsuccess = function(e) {
|
|
||||||
var req = indexedDB.open(dbName, dbVersion);
|
|
||||||
req.onsuccess = onsuccess;
|
|
||||||
req.onerror = function() {
|
|
||||||
assert_unreached('open should not fail');
|
|
||||||
};
|
|
||||||
req.onupgradeneeded = function(evt) {
|
|
||||||
var connection = evt.target.result;
|
|
||||||
|
|
||||||
var store = connection.createObjectStore('generated',
|
var store = connection.createObjectStore('generated',
|
||||||
{autoIncrement: true, keyPath: 'id'});
|
{autoIncrement: true, keyPath: 'id'});
|
||||||
var index = store.createIndex('test_idx', 'upper');
|
var index = store.createIndex('test_idx', 'upper');
|
||||||
|
@ -61,8 +49,10 @@ function doSetup(dbName, dbVersion, onsuccess) {
|
||||||
|
|
||||||
store = connection.createObjectStore('empty', null);
|
store = connection.createObjectStore('empty', null);
|
||||||
index = store.createIndex('test_idx', 'upper');
|
index = store.createIndex('test_idx', 'upper');
|
||||||
};
|
},
|
||||||
};
|
func,
|
||||||
|
name
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function createGetAllRequest(t, storeName, connection, range, maxCount) {
|
function createGetAllRequest(t, storeName, connection, range, maxCount) {
|
||||||
|
@ -74,9 +64,7 @@ function createGetAllRequest(t, storeName, connection, range, maxCount) {
|
||||||
return req;
|
return req;
|
||||||
}
|
}
|
||||||
|
|
||||||
doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
getall_test(function(t, connection) {
|
||||||
var connection = evt.target.result;
|
|
||||||
async_test(function(t) {
|
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection, 'C');
|
var req = createGetAllRequest(t, 'out-of-line', connection, 'C');
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
var data = evt.target.result;
|
var data = evt.target.result;
|
||||||
|
@ -87,7 +75,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Single item get');
|
}, 'Single item get');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'empty', connection);
|
var req = createGetAllRequest(t, 'empty', connection);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result, [],
|
assert_array_equals(evt.target.result, [],
|
||||||
|
@ -96,7 +84,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Empty object store');
|
}, 'Empty object store');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection);
|
var req = createGetAllRequest(t, 'out-of-line', connection);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
var data = evt.target.result;
|
var data = evt.target.result;
|
||||||
|
@ -107,7 +95,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get all keys');
|
}, 'Get all keys');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection, undefined,
|
var req = createGetAllRequest(t, 'out-of-line', connection, undefined,
|
||||||
10);
|
10);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -119,7 +107,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'maxCount=10');
|
}, 'maxCount=10');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection,
|
var req = createGetAllRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('G', 'M'));
|
IDBKeyRange.bound('G', 'M'));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -130,7 +118,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range');
|
}, 'Get bound range');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection,
|
var req = createGetAllRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('G', 'M'), 3);
|
IDBKeyRange.bound('G', 'M'), 3);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -142,7 +130,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range with maxCount');
|
}, 'Get bound range with maxCount');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection,
|
var req = createGetAllRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('G', 'K', false, true));
|
IDBKeyRange.bound('G', 'K', false, true));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -154,7 +142,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get upper excluded');
|
}, 'Get upper excluded');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection,
|
var req = createGetAllRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('G', 'K', true, false));
|
IDBKeyRange.bound('G', 'K', true, false));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -166,7 +154,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get lower excluded');
|
}, 'Get lower excluded');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'generated',
|
var req = createGetAllRequest(t, 'generated',
|
||||||
connection, IDBKeyRange.bound(4, 15), 3);
|
connection, IDBKeyRange.bound(4, 15), 3);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -177,7 +165,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range (generated) with maxCount');
|
}, 'Get bound range (generated) with maxCount');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line',
|
var req = createGetAllRequest(t, 'out-of-line',
|
||||||
connection, "Doesn't exist");
|
connection, "Doesn't exist");
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -188,7 +176,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Non existent key');
|
}, 'Non existent key');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection,
|
var req = createGetAllRequest(t, 'out-of-line', connection,
|
||||||
undefined, 0);
|
undefined, 0);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -200,7 +188,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'maxCount=0');
|
}, 'maxCount=0');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line-not-unique', connection,
|
var req = createGetAllRequest(t, 'out-of-line-not-unique', connection,
|
||||||
'first');
|
'first');
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -212,7 +200,7 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Retrieve multiEntry key');
|
}, 'Retrieve multiEntry key');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line-multi', connection,
|
var req = createGetAllRequest(t, 'out-of-line-multi', connection,
|
||||||
'vowel');
|
'vowel');
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -225,8 +213,4 @@ doSetup(location.pathname + '-IDBIndex.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Retrieve one key multiple values');
|
}, 'Retrieve one key multiple values');
|
||||||
|
|
||||||
// Explicit done needed in case async_test body fails synchronously.
|
|
||||||
done();
|
|
||||||
});
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -2,25 +2,14 @@
|
||||||
<title>IndexedDB: Test IDBIndex.getAllKeys.</title>
|
<title>IndexedDB: Test IDBIndex.getAllKeys.</title>
|
||||||
<script src="/resources/testharness.js"></script>
|
<script src="/resources/testharness.js"></script>
|
||||||
<script src="/resources/testharnessreport.js"></script>
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="support.js"></script>
|
||||||
<script>
|
<script>
|
||||||
setup({explicit_done: true});
|
|
||||||
|
|
||||||
var alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
|
var alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
|
||||||
|
|
||||||
function doSetup(dbName, dbVersion, onsuccess) {
|
function getall_test(func, name) {
|
||||||
var delete_request = indexedDB.deleteDatabase(dbName);
|
indexeddb_test(
|
||||||
delete_request.onerror = function() {
|
function(t, connection, tx) {
|
||||||
assert_unreached('deleteDatabase should not fail');
|
|
||||||
};
|
|
||||||
delete_request.onsuccess = function(e) {
|
|
||||||
var req = indexedDB.open(dbName, dbVersion);
|
|
||||||
req.onsuccess = onsuccess;
|
|
||||||
req.onerror = function() {
|
|
||||||
assert_unreached('open should not fail');
|
|
||||||
};
|
|
||||||
req.onupgradeneeded = function(evt) {
|
|
||||||
var connection = evt.target.result;
|
|
||||||
|
|
||||||
var store = connection.createObjectStore('generated',
|
var store = connection.createObjectStore('generated',
|
||||||
{autoIncrement: true, keyPath: 'id'});
|
{autoIncrement: true, keyPath: 'id'});
|
||||||
var index = store.createIndex('test_idx', 'upper');
|
var index = store.createIndex('test_idx', 'upper');
|
||||||
|
@ -51,8 +40,10 @@ function doSetup(dbName, dbVersion, onsuccess) {
|
||||||
|
|
||||||
store = connection.createObjectStore('empty', null);
|
store = connection.createObjectStore('empty', null);
|
||||||
index = store.createIndex('test_idx', 'upper');
|
index = store.createIndex('test_idx', 'upper');
|
||||||
};
|
},
|
||||||
};
|
func,
|
||||||
|
name
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function createGetAllKeysRequest(t, storeName, connection, range, maxCount) {
|
function createGetAllKeysRequest(t, storeName, connection, range, maxCount) {
|
||||||
|
@ -64,9 +55,7 @@ function createGetAllKeysRequest(t, storeName, connection, range, maxCount) {
|
||||||
return req;
|
return req;
|
||||||
}
|
}
|
||||||
|
|
||||||
doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
getall_test(function(t, connection) {
|
||||||
var connection = evt.target.result;
|
|
||||||
async_test(function(t) {
|
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection, 'C');
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection, 'C');
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
var data = evt.target.result;
|
var data = evt.target.result;
|
||||||
|
@ -75,7 +64,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Single item get');
|
}, 'Single item get');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'empty', connection);
|
var req = createGetAllKeysRequest(t, 'empty', connection);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result, [],
|
assert_array_equals(evt.target.result, [],
|
||||||
|
@ -84,7 +73,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Empty object store');
|
}, 'Empty object store');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection);
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result, alphabet,
|
assert_array_equals(evt.target.result, alphabet,
|
||||||
|
@ -93,7 +82,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get all keys');
|
}, 'Get all keys');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'generated', connection);
|
var req = createGetAllKeysRequest(t, 'generated', connection);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result,
|
assert_array_equals(evt.target.result,
|
||||||
|
@ -104,7 +93,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get all generated keys');
|
}, 'Get all generated keys');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection, undefined,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection, undefined,
|
||||||
10);
|
10);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -115,7 +104,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'maxCount=10');
|
}, 'maxCount=10');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('G', 'M'));
|
IDBKeyRange.bound('G', 'M'));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -126,7 +115,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range');
|
}, 'Get bound range');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('G', 'M'), 3);
|
IDBKeyRange.bound('G', 'M'), 3);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -137,7 +126,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range with maxCount');
|
}, 'Get bound range with maxCount');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('G', 'K', false, true));
|
IDBKeyRange.bound('G', 'K', false, true));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -148,7 +137,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get upper excluded');
|
}, 'Get upper excluded');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('G', 'K', true, false));
|
IDBKeyRange.bound('G', 'K', true, false));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -159,7 +148,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get lower excluded');
|
}, 'Get lower excluded');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'generated',
|
var req = createGetAllKeysRequest(t, 'generated',
|
||||||
connection, IDBKeyRange.bound(4, 15), 3);
|
connection, IDBKeyRange.bound(4, 15), 3);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -169,7 +158,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range (generated) with maxCount');
|
}, 'Get bound range (generated) with maxCount');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line',
|
var req = createGetAllKeysRequest(t, 'out-of-line',
|
||||||
connection, "Doesn't exist");
|
connection, "Doesn't exist");
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -180,7 +169,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Non existent key');
|
}, 'Non existent key');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
||||||
undefined, 0);
|
undefined, 0);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -190,7 +179,7 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'maxCount=0');
|
}, 'maxCount=0');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line-multi', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line-multi', connection,
|
||||||
'vowel');
|
'vowel');
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -200,8 +189,4 @@ doSetup(location.pathname + '-IDBIndex.getAllKeys', 1, function(evt) {
|
||||||
req.onerror = t.unreached_func('getAllKeys request should succeed');
|
req.onerror = t.unreached_func('getAllKeys request should succeed');
|
||||||
}, 'Retrieve multiEntry keys');
|
}, 'Retrieve multiEntry keys');
|
||||||
|
|
||||||
// Explicit done needed in case async_test body fails synchronously.
|
|
||||||
done();
|
|
||||||
});
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -35,6 +35,7 @@
|
||||||
assert_throws('NotFoundError',
|
assert_throws('NotFoundError',
|
||||||
function() { index = objStore.index("index") });
|
function() { index = objStore.index("index") });
|
||||||
assert_equals(index, undefined);
|
assert_equals(index, undefined);
|
||||||
|
db.close();
|
||||||
t.done();
|
t.done();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,25 +2,14 @@
|
||||||
<title>IndexedDB: Test IDBObjectStore.getAll.</title>
|
<title>IndexedDB: Test IDBObjectStore.getAll.</title>
|
||||||
<script src="/resources/testharness.js"></script>
|
<script src="/resources/testharness.js"></script>
|
||||||
<script src="/resources/testharnessreport.js"></script>
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="support.js"></script>
|
||||||
<script>
|
<script>
|
||||||
setup({explicit_done: true});
|
|
||||||
|
|
||||||
var alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
|
var alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
|
||||||
|
|
||||||
function doSetup(dbName, dbVersion, onsuccess) {
|
function getall_test(func, name) {
|
||||||
var delete_request = indexedDB.deleteDatabase(dbName);
|
indexeddb_test(
|
||||||
delete_request.onerror = function() {
|
function(t, connection, tx) {
|
||||||
assert_unreached('deleteDatabase should not fail');
|
|
||||||
};
|
|
||||||
delete_request.onsuccess = function(e) {
|
|
||||||
var req = indexedDB.open(dbName, dbVersion);
|
|
||||||
req.onsuccess = onsuccess;
|
|
||||||
req.onerror = function() {
|
|
||||||
assert_unreached('open should not fail');
|
|
||||||
};
|
|
||||||
req.onupgradeneeded = function(evt) {
|
|
||||||
var connection = evt.target.result;
|
|
||||||
|
|
||||||
var store = connection.createObjectStore('generated',
|
var store = connection.createObjectStore('generated',
|
||||||
{autoIncrement: true, keyPath: 'id'});
|
{autoIncrement: true, keyPath: 'id'});
|
||||||
alphabet.forEach(function(letter) {
|
alphabet.forEach(function(letter) {
|
||||||
|
@ -33,8 +22,10 @@ function doSetup(dbName, dbVersion, onsuccess) {
|
||||||
});
|
});
|
||||||
|
|
||||||
store = connection.createObjectStore('empty', null);
|
store = connection.createObjectStore('empty', null);
|
||||||
};
|
},
|
||||||
};
|
func,
|
||||||
|
name
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function createGetAllRequest(t, storeName, connection, range, maxCount) {
|
function createGetAllRequest(t, storeName, connection, range, maxCount) {
|
||||||
|
@ -45,9 +36,7 @@ function createGetAllRequest(t, storeName, connection, range, maxCount) {
|
||||||
return req;
|
return req;
|
||||||
}
|
}
|
||||||
|
|
||||||
doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
getall_test(function(t, connection) {
|
||||||
var connection = evt.target.result;
|
|
||||||
async_test(function(t) {
|
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection, 'c');
|
var req = createGetAllRequest(t, 'out-of-line', connection, 'c');
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result, ['value-c']);
|
assert_array_equals(evt.target.result, ['value-c']);
|
||||||
|
@ -55,7 +44,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Single item get');
|
}, 'Single item get');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'generated', connection, 3);
|
var req = createGetAllRequest(t, 'generated', connection, 3);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
var data = evt.target.result;
|
var data = evt.target.result;
|
||||||
|
@ -67,7 +56,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Single item get (generated key)');
|
}, 'Single item get (generated key)');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'empty', connection);
|
var req = createGetAllRequest(t, 'empty', connection);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result, [],
|
assert_array_equals(evt.target.result, [],
|
||||||
|
@ -76,7 +65,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'getAll on empty object store');
|
}, 'getAll on empty object store');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection);
|
var req = createGetAllRequest(t, 'out-of-line', connection);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result,
|
assert_array_equals(evt.target.result,
|
||||||
|
@ -85,7 +74,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get all values');
|
}, 'Get all values');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection, undefined,
|
var req = createGetAllRequest(t, 'out-of-line', connection, undefined,
|
||||||
10);
|
10);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -95,7 +84,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Test maxCount');
|
}, 'Test maxCount');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection,
|
var req = createGetAllRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('g', 'm'));
|
IDBKeyRange.bound('g', 'm'));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -105,7 +94,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range');
|
}, 'Get bound range');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection,
|
var req = createGetAllRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('g', 'm'), 3);
|
IDBKeyRange.bound('g', 'm'), 3);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -115,7 +104,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range with maxCount');
|
}, 'Get bound range with maxCount');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection,
|
var req = createGetAllRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('g', 'k', false, true));
|
IDBKeyRange.bound('g', 'k', false, true));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -125,7 +114,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get upper excluded');
|
}, 'Get upper excluded');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection,
|
var req = createGetAllRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('g', 'k', true, false));
|
IDBKeyRange.bound('g', 'k', true, false));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -135,7 +124,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get lower excluded');
|
}, 'Get lower excluded');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'generated', connection,
|
var req = createGetAllRequest(t, 'generated', connection,
|
||||||
IDBKeyRange.bound(4, 15), 3);
|
IDBKeyRange.bound(4, 15), 3);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -147,7 +136,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range (generated) with maxCount');
|
}, 'Get bound range (generated) with maxCount');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection,
|
var req = createGetAllRequest(t, 'out-of-line', connection,
|
||||||
"Doesn't exist");
|
"Doesn't exist");
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -158,7 +147,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
req.onerror = t.unreached_func('getAll request should succeed');
|
req.onerror = t.unreached_func('getAll request should succeed');
|
||||||
}, 'Non existent key');
|
}, 'Non existent key');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllRequest(t, 'out-of-line', connection, undefined, 0);
|
var req = createGetAllRequest(t, 'out-of-line', connection, undefined, 0);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result,
|
assert_array_equals(evt.target.result,
|
||||||
|
@ -167,8 +156,4 @@ doSetup(location.pathname + '-IDBObjectStore.getAll', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'zero maxCount');
|
}, 'zero maxCount');
|
||||||
|
|
||||||
// Explicit done needed in case async_test body fails synchronously.
|
|
||||||
done();
|
|
||||||
});
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -2,25 +2,14 @@
|
||||||
<title>IndexedDB: Test IDBObjectStore.getAllKeys.</title>
|
<title>IndexedDB: Test IDBObjectStore.getAllKeys.</title>
|
||||||
<script src="/resources/testharness.js"></script>
|
<script src="/resources/testharness.js"></script>
|
||||||
<script src="/resources/testharnessreport.js"></script>
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="support.js"></script>
|
||||||
<script>
|
<script>
|
||||||
setup({explicit_done: true});
|
|
||||||
|
|
||||||
var alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
|
var alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
|
||||||
|
|
||||||
function doSetup(dbName, dbVersion, onsuccess) {
|
function getall_test(func, name) {
|
||||||
var delete_request = indexedDB.deleteDatabase(dbName);
|
indexeddb_test(
|
||||||
delete_request.onerror = function() {
|
function(t, connection, tx) {
|
||||||
assert_unreached('deleteDatabase should not fail');
|
|
||||||
};
|
|
||||||
delete_request.onsuccess = function(e) {
|
|
||||||
var req = indexedDB.open(dbName, dbVersion);
|
|
||||||
req.onsuccess = onsuccess;
|
|
||||||
req.onerror = function() {
|
|
||||||
assert_unreached('open should not fail');
|
|
||||||
};
|
|
||||||
req.onupgradeneeded = function(evt) {
|
|
||||||
var connection = evt.target.result;
|
|
||||||
|
|
||||||
var store = connection.createObjectStore('generated',
|
var store = connection.createObjectStore('generated',
|
||||||
{autoIncrement: true, keyPath: 'id'});
|
{autoIncrement: true, keyPath: 'id'});
|
||||||
alphabet.forEach(function(letter) {
|
alphabet.forEach(function(letter) {
|
||||||
|
@ -33,8 +22,10 @@ function doSetup(dbName, dbVersion, onsuccess) {
|
||||||
});
|
});
|
||||||
|
|
||||||
store = connection.createObjectStore('empty', null);
|
store = connection.createObjectStore('empty', null);
|
||||||
};
|
},
|
||||||
};
|
func,
|
||||||
|
name
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function createGetAllKeysRequest(t, storeName, connection, range, maxCount) {
|
function createGetAllKeysRequest(t, storeName, connection, range, maxCount) {
|
||||||
|
@ -45,9 +36,7 @@ function createGetAllKeysRequest(t, storeName, connection, range, maxCount) {
|
||||||
return req;
|
return req;
|
||||||
}
|
}
|
||||||
|
|
||||||
doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
getall_test(function(t, connection) {
|
||||||
var connection = evt.target.result;
|
|
||||||
async_test(function(t) {
|
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection, 'c');
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection, 'c');
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result, ['c']);
|
assert_array_equals(evt.target.result, ['c']);
|
||||||
|
@ -55,7 +44,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Single item get');
|
}, 'Single item get');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'generated', connection, 3);
|
var req = createGetAllKeysRequest(t, 'generated', connection, 3);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
var data = evt.target.result;
|
var data = evt.target.result;
|
||||||
|
@ -65,7 +54,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Single item get (generated key)');
|
}, 'Single item get (generated key)');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'empty', connection);
|
var req = createGetAllKeysRequest(t, 'empty', connection);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result, [],
|
assert_array_equals(evt.target.result, [],
|
||||||
|
@ -75,7 +64,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'getAllKeys on empty object store');
|
}, 'getAllKeys on empty object store');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection);
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
assert_array_equals(evt.target.result, alphabet);
|
assert_array_equals(evt.target.result, alphabet);
|
||||||
|
@ -83,7 +72,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get all values');
|
}, 'Get all values');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection, undefined,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection, undefined,
|
||||||
10);
|
10);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -92,7 +81,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Test maxCount');
|
}, 'Test maxCount');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('g', 'm'));
|
IDBKeyRange.bound('g', 'm'));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -101,7 +90,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range');
|
}, 'Get bound range');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('g', 'm'), 3);
|
IDBKeyRange.bound('g', 'm'), 3);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -110,7 +99,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range with maxCount');
|
}, 'Get bound range with maxCount');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('g', 'k', false, true));
|
IDBKeyRange.bound('g', 'k', false, true));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -119,7 +108,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get upper excluded');
|
}, 'Get upper excluded');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
||||||
IDBKeyRange.bound('g', 'k', true, false));
|
IDBKeyRange.bound('g', 'k', true, false));
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -128,7 +117,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get lower excluded');
|
}, 'Get lower excluded');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'generated', connection,
|
var req = createGetAllKeysRequest(t, 'generated', connection,
|
||||||
IDBKeyRange.bound(4, 15), 3);
|
IDBKeyRange.bound(4, 15), 3);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -139,7 +128,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'Get bound range (generated) with maxCount');
|
}, 'Get bound range (generated) with maxCount');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection,
|
||||||
"Doesn't exist");
|
"Doesn't exist");
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -151,7 +140,7 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
req.onerror = t.unreached_func('getAllKeys request should succeed');
|
req.onerror = t.unreached_func('getAllKeys request should succeed');
|
||||||
}, 'Non existent key');
|
}, 'Non existent key');
|
||||||
|
|
||||||
async_test(function(t) {
|
getall_test(function(t, connection) {
|
||||||
var req = createGetAllKeysRequest(t, 'out-of-line', connection, undefined,
|
var req = createGetAllKeysRequest(t, 'out-of-line', connection, undefined,
|
||||||
0);
|
0);
|
||||||
req.onsuccess = t.step_func(function(evt) {
|
req.onsuccess = t.step_func(function(evt) {
|
||||||
|
@ -160,8 +149,4 @@ doSetup(location.pathname + '-IDBObjectStore.getAllKeys', 1, function(evt) {
|
||||||
});
|
});
|
||||||
}, 'zero maxCount');
|
}, 'zero maxCount');
|
||||||
|
|
||||||
// Explicit done needed in case async_test body fails synchronously.
|
|
||||||
done();
|
|
||||||
});
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -4,17 +4,12 @@
|
||||||
<meta name=timeout content=long>
|
<meta name=timeout content=long>
|
||||||
<script src="/resources/testharness.js"></script>
|
<script src="/resources/testharness.js"></script>
|
||||||
<script src="/resources/testharnessreport.js"></script>
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="support.js"></script>
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
function getkey_test(func, name) {
|
function getkey_test(func, name) {
|
||||||
return async_test(function(t) {
|
indexeddb_test(
|
||||||
var del = indexedDB.deleteDatabase(name);
|
function(t, db, tx) {
|
||||||
del.onerror = t.unreached_func('deleteDatabase failed');
|
|
||||||
var open = indexedDB.open(name);
|
|
||||||
open.onerror = t.unreached_func('open failed');
|
|
||||||
open.onupgradeneeded = t.step_func(function() {
|
|
||||||
var db = open.result;
|
|
||||||
|
|
||||||
var basic = db.createObjectStore('basic');
|
var basic = db.createObjectStore('basic');
|
||||||
var key_path_store = db.createObjectStore('key path',
|
var key_path_store = db.createObjectStore('key path',
|
||||||
{keyPath: 'id'});
|
{keyPath: 'id'});
|
||||||
|
@ -30,12 +25,10 @@ function getkey_test(func, name) {
|
||||||
key_generator_store.put('value: ' + i);
|
key_generator_store.put('value: ' + i);
|
||||||
key_generator_and_path_store.put({});
|
key_generator_and_path_store.put({});
|
||||||
}
|
}
|
||||||
});
|
},
|
||||||
open.onsuccess = t.step_func(function() {
|
func,
|
||||||
var db = open.result;
|
name
|
||||||
func(t, db);
|
);
|
||||||
});
|
|
||||||
}, name);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
getkey_test(function(t, db) {
|
getkey_test(function(t, db) {
|
||||||
|
|
|
@ -4,28 +4,17 @@
|
||||||
<script src="/resources/testharness.js"></script>
|
<script src="/resources/testharness.js"></script>
|
||||||
<script src="/resources/testharnessreport.js"></script>
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
<script src="support.js"></script>
|
<script src="support.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
var db, open;
|
indexeddb_test(
|
||||||
|
function(t, db, tx) {
|
||||||
setup(function() {
|
|
||||||
open = indexedDB.open('testdb-' + new Date().getTime());
|
|
||||||
open.onupgradeneeded = function(e) {
|
|
||||||
db = e.target.result;
|
|
||||||
var objStore = db.createObjectStore("test");
|
var objStore = db.createObjectStore("test");
|
||||||
objStore.createIndex("index", "");
|
objStore.createIndex("index", "");
|
||||||
|
|
||||||
objStore.add("data", 1);
|
objStore.add("data", 1);
|
||||||
objStore.add("data2", 2);
|
objStore.add("data2", 2);
|
||||||
};
|
|
||||||
},
|
},
|
||||||
{ explicit_done: true });
|
function(t, db, tx) {
|
||||||
|
|
||||||
|
|
||||||
open.onsuccess = function() {
|
|
||||||
|
|
||||||
async_test(document.title + " - pass something other than number").step(function(e) {
|
|
||||||
var idx = db.transaction("test").objectStore("test").index("index");
|
var idx = db.transaction("test").objectStore("test").index("index");
|
||||||
|
|
||||||
assert_throws("DataError",
|
assert_throws("DataError",
|
||||||
|
@ -37,14 +26,8 @@
|
||||||
assert_throws("DataError",
|
assert_throws("DataError",
|
||||||
function() { idx.openCursor({ lower: "a", lowerOpen: false, upper: null, upperOpen: false }); });
|
function() { idx.openCursor({ lower: "a", lowerOpen: false, upper: null, upperOpen: false }); });
|
||||||
|
|
||||||
this.done();
|
t.done();
|
||||||
});
|
},
|
||||||
|
document.title + " - pass something other than number"
|
||||||
|
);
|
||||||
// Stop blocking the testing system from hereon
|
|
||||||
done();
|
|
||||||
}
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div id="log"></div>
|
|
||||||
|
|
|
@ -2,26 +2,20 @@
|
||||||
<title>IDBObjectStore.openKeyCursor()</title>
|
<title>IDBObjectStore.openKeyCursor()</title>
|
||||||
<script src="/resources/testharness.js"></script>
|
<script src="/resources/testharness.js"></script>
|
||||||
<script src="/resources/testharnessreport.js"></script>
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="support.js"></script>
|
||||||
<script>
|
<script>
|
||||||
function store_test(func, name) {
|
function store_test(func, name) {
|
||||||
async_test(function(t) {
|
indexeddb_test(
|
||||||
var del = indexedDB.deleteDatabase(name);
|
function(t, db, tx) {
|
||||||
del.onerror = t.unreached_func("deleteDatabase failed");
|
|
||||||
var open = indexedDB.open(name);
|
|
||||||
open.onupgradeneeded = t.step_func(function() {
|
|
||||||
var db = open.result;
|
|
||||||
var store = db.createObjectStore("store");
|
var store = db.createObjectStore("store");
|
||||||
for (var i = 0; i < 10; ++i) {
|
for (var i = 0; i < 10; ++i) {
|
||||||
store.put("value: " + i, i);
|
store.put("value: " + i, i);
|
||||||
}
|
}
|
||||||
});
|
},
|
||||||
|
function(t, db) {
|
||||||
open.onsuccess = t.step_func(function() {
|
|
||||||
var db = open.result;
|
|
||||||
var tx = db.transaction("store");
|
var tx = db.transaction("store");
|
||||||
var store = tx.objectStore("store");
|
var store = tx.objectStore("store");
|
||||||
func(t, db, tx, store);
|
func(t, db, tx, store);
|
||||||
});
|
|
||||||
}, name);
|
}, name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,12 @@ function upgradeneeded_test(upgrade_func, success_func, error_func, description)
|
||||||
var open_request = indexedDB.open(dbName);
|
var open_request = indexedDB.open(dbName);
|
||||||
|
|
||||||
open_request.onupgradeneeded = t.step_func(function() {
|
open_request.onupgradeneeded = t.step_func(function() {
|
||||||
|
t.add_cleanup(function() {
|
||||||
|
if (open_request.result) {
|
||||||
|
open_request.result.close(),
|
||||||
|
indexedDB.deleteDatabase(dbName);
|
||||||
|
}
|
||||||
|
});
|
||||||
upgrade_func(t, open_request);
|
upgrade_func(t, open_request);
|
||||||
});
|
});
|
||||||
open_request.onsuccess = t.step_func(function() {
|
open_request.onsuccess = t.step_func(function() {
|
||||||
|
|
|
@ -6,24 +6,21 @@
|
||||||
<script src="support.js"></script>
|
<script src="support.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
var db,
|
async_test(function(t) {
|
||||||
t = async_test(document.title + " - request gotten by the handler"),
|
var open_rq = indexedDB.open("idbtransaction-" + document.location + t.name);
|
||||||
open_t = async_test(document.title + " - request returned by open()"),
|
|
||||||
|
|
||||||
open_rq = indexedDB.open("idbtransaction-" + new Date().getTime() + Math.random());
|
open_rq.onblocked = t.unreached_func('open_rq.onblocked');
|
||||||
|
open_rq.onerror = t.unreached_func('open_rq.onerror');
|
||||||
open_t.step(function() {
|
|
||||||
assert_equals(open_rq.transaction, null, "IDBOpenDBRequest.transaction");
|
|
||||||
assert_equals(open_rq.source, null, "IDBOpenDBRequest.source");
|
|
||||||
assert_equals(open_rq.readyState, "pending", "IDBOpenDBRequest.readyState");
|
|
||||||
|
|
||||||
assert_true(open_rq instanceof IDBOpenDBRequest, "open_rq instanceof IDBOpenDBRequest");
|
|
||||||
assert_equals(open_rq + "", "[object IDBOpenDBRequest]", "IDBOpenDBRequest (open_rq)");
|
|
||||||
|
|
||||||
open_t.done();
|
|
||||||
});
|
|
||||||
|
|
||||||
open_rq.onupgradeneeded = t.step_func(function(e) {
|
open_rq.onupgradeneeded = t.step_func(function(e) {
|
||||||
|
t.add_cleanup(function() {
|
||||||
|
open_rq.onerror = function(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
};
|
||||||
|
open_rq.result.close();
|
||||||
|
indexedDB.deleteDatabase(open_rq.result.name);
|
||||||
|
});
|
||||||
|
|
||||||
assert_equals(e.target, open_rq, "e.target is reusing the same IDBOpenDBRequest");
|
assert_equals(e.target, open_rq, "e.target is reusing the same IDBOpenDBRequest");
|
||||||
assert_equals(e.target.transaction, open_rq.transaction, "IDBOpenDBRequest.transaction");
|
assert_equals(e.target.transaction, open_rq.transaction, "IDBOpenDBRequest.transaction");
|
||||||
|
|
||||||
|
@ -31,16 +28,32 @@
|
||||||
t.done();
|
t.done();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
}, document.title + " - request gotten by the handler");
|
||||||
|
|
||||||
// Not plausible conditions...
|
async_test(function(t) {
|
||||||
function fail_helper(name) {
|
var open_rq = indexedDB.open("idbtransaction-" + document.location + t.name);
|
||||||
return function() {
|
|
||||||
t.step(function() { assert_unreached(name); });
|
assert_equals(open_rq.transaction, null, "IDBOpenDBRequest.transaction");
|
||||||
open_t.step(function() { assert_unreached(name); });
|
assert_equals(open_rq.source, null, "IDBOpenDBRequest.source");
|
||||||
|
assert_equals(open_rq.readyState, "pending", "IDBOpenDBRequest.readyState");
|
||||||
|
|
||||||
|
assert_true(open_rq instanceof IDBOpenDBRequest, "open_rq instanceof IDBOpenDBRequest");
|
||||||
|
assert_equals(open_rq + "", "[object IDBOpenDBRequest]", "IDBOpenDBRequest (open_rq)");
|
||||||
|
|
||||||
|
open_rq.onblocked = t.unreached_func('open_rq.onblocked');
|
||||||
|
open_rq.onerror = t.unreached_func('open_rq.onerror');
|
||||||
|
|
||||||
|
open_rq.onupgradeneeded = t.step_func(function() {
|
||||||
|
t.add_cleanup(function() {
|
||||||
|
open_rq.onerror = function(e) {
|
||||||
|
e.preventDefault();
|
||||||
};
|
};
|
||||||
}
|
open_rq.result.close();
|
||||||
open_rq.onblocked = fail_helper('open_rq.onblocked');
|
indexedDB.deleteDatabase(open_rq.result.name);
|
||||||
open_rq.onerror = fail_helper('open_rq.onerror');
|
});
|
||||||
</script>
|
t.done();
|
||||||
|
});
|
||||||
|
|
||||||
<div id="log"></div>
|
}, document.title + " - request returned by open()");
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue