Skip to content

Api stabilization

Api stabilization #57

GitHub Actions / Xcode test results succeeded Dec 7, 2024 in 0s

Xcode test results

Testing workspace jose-swift with scheme jose-swift-Package

Summary

TotalSuccess PassedFailure FailedSkipped SkippedExpected Failure Expected Failure⏱️ Time
11511500040.08s

Test Summary

ExampleTests

  • Device: Mac mini, 13.7.1 (22H221)
  • SDK: macOS 14.2, 14.2
TestTotalSuccessFailureSkippedExpected Failure
test-class ExamplesTests2121000

JWATests

  • Device: Mac mini, 13.7.1 (22H221)
  • SDK: macOS 14.2, 14.2
TestTotalSuccessFailureSkippedExpected Failure
test-class C20PTests11000
test-class EdDSATests11000
test-class Secp256k1Tests88000
test-class XC20PTests11000

JWETests

  • Device: Mac mini, 13.7.1 (22H221)
  • SDK: macOS 14.2, 14.2
TestTotalSuccessFailureSkippedExpected Failure
test-class AESTests66000
test-class DirectTests11000
test-class ECDH1PUTests77000
test-class ECDHESTests44000
test-class PBES2Tests44000
test-class RFC7516Tests44000
test-class RFC7520Tests1212000
test-class RSATests22000

JWKTests

  • Device: Mac mini, 13.7.1 (22H221)
  • SDK: macOS 14.2, 14.2
TestTotalSuccessFailureSkippedExpected Failure
test-class JWKThumbprintTests11000

JWSTests

  • Device: Mac mini, 13.7.1 (22H221)
  • SDK: macOS 14.2, 14.2
TestTotalSuccessFailureSkippedExpected Failure
test-class JWSJsonTests77000
test-class JWSTests1515000
test-class RFC7515Tests1010000

JWTTests

  • Device: Mac mini, 13.7.1 (22H221)
  • SDK: macOS 14.2, 14.2
TestTotalSuccessFailureSkippedExpected Failure
test-class JWTTests1010000

Failure Failures

All tests passed 🎉


Code Coverage

Coverage Covered Executable
ExampleTests 74.34 % 4404 5924
  ECDHEncrypter.swift 89.17 % 214 240
  AESDecryptor.swift 86.72 % 111 128
  DirectDecryptor.swift 84.62 % 55 65
  JWS+Verify.swift 74.17 % 89 120
  ArrayClaim.swift 28.75 % 23 80
  JWT.swift 26.92 % 21 78
  JWERegisteredFieldsHeader+Helpers.swift 97.50 % 78 80
  JWS+Json.swift 84.85 % 84 99
  JWTCodable.swift 100.00 % 11 11
  PasswordBasedEncrypter.swift 83.13 % 133 160
  NumericClaim.swift 100.00 % 3 3
  JWK+Codable.swift 91.89 % 68 74
  DefaultJWTClaims+Codable.swift 100.00 % 20 20
  DateClaim.swift 0.00 % 0 3
  IssuedAtClaim.swift 100.00 % 3 3
  JWTIdentifierClaim.swift 100.00 % 3 3
  RSAEncrypter.swift 89.00 % 89 100
  SubjectClaim.swift 100.00 % 3 3
  AESEncryptor.swift 92.05 % 139 151
  IssuerClaim.swift 100.00 % 3 3
  Claims+Codable.swift 87.50 % 77 88
  MultiEncryptor.swift 93.75 % 90 96
  JWERegisteredFieldsHeader.swift 100.00 % 103 103
  StringClaim.swift 100.00 % 3 3
  JWEEncryptionModule.swift 93.75 % 30 32
  JWTRegisteredFieldsClaims.swift 100.00 % 10 10
  JWEEncrypter.swift 46.15 % 18 39
  Base64URL.swift 100.00 % 25 25
  JWT+Encryption.swift 26.35 % 39 148
  JWS.swift 73.53 % 25 34
  ECDHDecryptor.swift 89.76 % 184 205
  MultiDecryptor.swift 44.62 % 58 130
  Claims.swift 50.00 % 4 8
  JWT+Signing.swift 44.12 % 30 68
  RSADecryptor.swift 85.39 % 76 89
  ECDH1PUDecryptor.swift 89.92 % 214 238
  AudienceClaim.swift 42.86 % 3 7
  JWS+Sign.swift 55.19 % 149 270
  JWS+JsonFlattened.swift 55.65 % 69 124
  JWEHelpers.swift 94.74 % 54 57
  JWE+Encrypt.swift 77.14 % 162 210
  JWEParts.swift 100.00 % 22 22
  JWK+SigningAlgorithm.swift 62.07 % 36 58
  ObjectClaim.swift 48.72 % 19 39
  HelperExtensions.swift 83.33 % 10 12
  JWE+Decrypt.swift 53.19 % 75 141
  ECDH1PUEncrypter.swift 89.35 % 277 310
  JWEDecryptor.swift 76.71 % 56 73
  JWKSet.swift 0.00 % 0 26
  JWSRegisteredFieldsHeader.swift 100.00 % 23 23
  AAD.swift 68.42 % 39 57
  DefaultJWEHeaderImpl+Codable.swift 97.59 % 81 83
  JWK+Thumbprint.swift 95.12 % 39 41
  KeyManagementAlgorithm+Family.swift 93.75 % 15 16
  JWT+Verification.swift 50.00 % 183 366
  JWE.swift 94.44 % 34 36
  ExampleTests.swift 77.13 % 560 726
  DirectEncrypter.swift 88.00 % 66 75
  NotBeforeClaim.swift 100.00 % 3 3
  JWTClaimsBuilder.swift 22.67 % 17 75
  ExpirationTimeClaim.swift 100.00 % 3 3
  JWS+Helper.swift 97.22 % 35 36
  JWE+Json.swift 79.55 % 70 88
  BoolClaim.swift 100.00 % 3 3
  JWK.swift 100.00 % 23 23
  DataRepresentable.swift 31.03 % 9 29
  DefaultJWSHeaderImpl+Codable.swift 100.00 % 30 30
  PasswordBasedDecryptor.swift 85.96 % 98 114
  JSONEncoder+JoseEncoder.swift 62.50 % 5 8
JWATests 66.91 % 2329 3481
  P521+KeyAgreement.swift 0.00 % 0 6
  C20PTests.swift 100.00 % 23 23
  AESCBC_SHA512+ContentEncryptor.swift 88.89 % 48 54
  ES256Verifier.swift 62.50 % 10 16
  ES256KVerifier.swift 87.50 % 42 48
  ES256Signer.swift 85.71 % 6 7
  PS256Verifier.swift 0.00 % 0 30
  C20P+ContentEncryption.swift 88.00 % 44 50
  AESGCM+KeyUnwrap.swift 85.00 % 17 20
  RS256Verifier.swift 76.92 % 10 13
  PS256Signer.swift 0.00 % 0 24
  DataKey.swift 31.37 % 32 102
  JWKCryptoPresentation.swift 77.92 % 60 77
  ECDHES.swift 90.00 % 9 10
  ES256KSigner.swift 93.94 % 31 33
  ECDH1PU+KeyAgreementZ.swift 90.91 % 10 11
  PS384Verifier.swift 0.00 % 0 30
  HelperExtensions.swift 83.33 % 10 12
  MockKeyAgreementZ.swift 0.00 % 0 3
  RS384Verifier.swift 0.00 % 0 13
  MockedSigner.swift 0.00 % 0 3
  HS384Verifier.swift 0.00 % 0 6
  HS256Verifier.swift 83.33 % 5 6
  Zip+ContentCompressor.swift 100.00 % 6 6
  RSA+Security.swift 90.00 % 18 20
  RS256Signer.swift 85.00 % 17 20
  ContentCompressionAlgorithm.swift 100.00 % 12 12
  MockKeyDerivation.swift 0.00 % 0 3
  secp256k1+KeyAgreement.swift 0.00 % 0 6
  ECDHES+KeyAgreementZ.swift 100.00 % 3 3
  secp256k1+KeyGeneration.swift 0.00 % 0 19
  ES256KTests.swift 100.00 % 194 194
  PS384Signer.swift 0.00 % 0 24
  JWK+KeyAgreement.swift 80.77 % 21 26
  ECDH1PU.swift 93.33 % 28 30
  PBE2_SHA256_A128KW+KeyEncryption.swift 86.67 % 13 15
  Base64URL.swift 100.00 % 25 25
  PS512Signer.swift 0.00 % 0 24
  AESKeyWrapCommonCrypto.swift 0.00 % 0 104
  AES128GCM+KeyEncryption.swift 95.45 % 21 22
  MockContentEncryptor.swift 0.00 % 0 9
  Curve25519+KeyAgreement.swift 100.00 % 6 6
  PBE2_SHA512_A256KW+KeyEncryption.swift 86.67 % 13 15
  AESGCM.swift 100.00 % 20 20
  AES128GCM+ContentEncryptor.swift 87.80 % 36 41
  KeyDerivation.swift 100.00 % 126 126
  RS512Verifier.swift 0.00 % 0 13
  P256+KeyAgreement.swift 100.00 % 6 6
  SecKeyExtended.swift 57.46 % 77 134
  AESKeyUnwrap+KeyUnwrap.swift 73.33 % 11 15
  RS384Signer.swift 0.00 % 0 13
  JWTCodable.swift 100.00 % 11 11
  EdDSASigner.swift 83.33 % 5 6
  AESCBC_SHA256+ContentEncryptor.swift 88.89 % 48 54
  PS512Verifier.swift 0.00 % 0 30
  ES521Verifier.swift 62.50 % 10 16
  SigningAlgorithm.swift 73.61 % 53 72
  RS512Signer.swift 76.92 % 10 13
  RSA15KeyWrapper+KeyEncryption.swift 81.58 % 31 38
  ConcatKDF.swift 90.67 % 68 75
  P384+KeyGeneration.swift 36.84 % 7 19
  RSAOAEP256KeyUnwrap+KeyUnwrapping.swift 80.77 % 42 52
  HS512Verifier.swift 0.00 % 0 6
  PBE2_SHA384_A192KW+KeyEncryption.swift 86.67 % 13 15
  KeyRepresentable.swift 34.62 % 9 26
  ECDH1PU+KeyDerivation.swift 81.82 % 27 33
  RSAOAEP256KeyWrap+KeyEncryption.swift 81.58 % 31 38
  ES384Verifier.swift 0.00 % 0 16
  MockedVerifier.swift 0.00 % 0 3
  ES521Signer.swift 85.71 % 6 7
  KeyEncryptionAlgorithm.swift 94.37 % 134 142
  JWK+KeyGeneration.swift 70.59 % 24 34
  EdDSATests.swift 100.00 % 15 15
  XC20PTests.swift 100.00 % 23 23
  ContentEncryptionAlgorithm.swift 96.61 % 57 59
  PBES2SHA.swift 96.15 % 25 26
  JWKRepresentable.swift 60.15 % 157 261
  ES384Signer.swift 85.71 % 6 7
  MockKeyEncryption.swift 0.00 % 0 6
  JSONEncoder+JoseEncoder.swift 62.50 % 5 8
  

Details

Test Details

ExampleTestsback

ExamplesTests back

SuccessFailureSkippedExpected Failure⏱️
21 (100%)0 (0%)0 (0%)0 (0%)0.02s
Successtest-method testExample1_1AndExample1_2()
Successtest-method testExample1_3And1_4()
Successtest-method testExample1_5And1_6()
Successtest-method testExample1_7()
Successtest-method testExample1_8()
Successtest-method testExample2_1And2_2()
Successtest-method testExample2_3()
Successtest-method testExample2_4()
Successtest-method testExample3_1And3_2()
Successtest-method testExample3_3()
Successtest-method testExample3_4()
Successtest-method testExample4_1And4_2()
Successtest-method testExample4_3()
Successtest-method testExample4_4()
Successtest-method testExample5_1()
Successtest-method testExample5_2And5_3And5_4And5_5()
Successtest-method testExample5_6()
Successtest-method testExample5_7()
Successtest-method testExample7_1()
Successtest-method testExample7_2()
Successtest-method testExample9_1()

JWATestsback

C20PTests back

SuccessFailureSkippedExpected Failure⏱️
1 (100%)0 (0%)0 (0%)0 (0%)0.01s
Successtest-method testC20PCycle()

EdDSATests back

SuccessFailureSkippedExpected Failure⏱️
1 (100%)0 (0%)0 (0%)0 (0%)0.03s
Successtest-method testEdDSACycle()

Secp256k1Tests back

SuccessFailureSkippedExpected Failure⏱️
8 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testNotNormalizedBouncyCastleSignatureValidation()
Successtest-method testSecp256k1BouncyCastleSignatureVerify()
Successtest-method testSecp256k1BouncyCastleSignatureVerifyFailIfFeatureNotActive()
Successtest-method testSecp256k1Cycle()
Successtest-method testSecp256k1CycleDerSignature()
Successtest-method testSecp256k1CycleInvertedRS()
Successtest-method testSecp256k1JSLibrarySignatureVerifyFailIfFeatureNotActive()
Successtest-method testSecp256k1SignatureFromJSLibrary()

XC20PTests back

SuccessFailureSkippedExpected Failure⏱️
1 (100%)0 (0%)0 (0%)0 (0%)0.01s
Successtest-method testXC20PCycle()

JWETestsback

AESTests back

SuccessFailureSkippedExpected Failure⏱️
6 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testAES128Cycle()
Successtest-method testAES128GCMCycle()
Successtest-method testAES192Cycle()
Successtest-method testAES192GCMCycle()
Successtest-method testAES256Cycle()
Successtest-method testAES256GCMCycle()

DirectTests back

SuccessFailureSkippedExpected Failure⏱️
1 (100%)0 (0%)0 (0%)0 (0%)0.01s
Successtest-method testDirectCycle()

ECDH1PUTests back

SuccessFailureSkippedExpected Failure⏱️
7 (100%)0 (0%)0 (0%)0 (0%)0.34s
Successtest-method testECDH1PUA128KWCycle()
Successtest-method testECDH1PUA192KWCycle()
Successtest-method testECDH1PUA256KW_C20PCycle()
Successtest-method testECDH1PUA256KW_XC20PCycle()
Successtest-method testECDH1PUA256KWCurve25519Cycle()
Successtest-method testECDH1PUA256KWCycle()
Successtest-method testECDH1PUCycle()

ECDHESTests back

SuccessFailureSkippedExpected Failure⏱️
4 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testECDHESA256KW_C20PCycle()
Successtest-method testECDHESA256KW_XC20PCycle()
Successtest-method testECDHESA256KWCycle()
Successtest-method testECDHESCycle()

PBES2Tests back

SuccessFailureSkippedExpected Failure⏱️
4 (100%)0 (0%)0 (0%)0 (0%)39.34s
Successtest-method testJWEPBES2_HS512_A256KW()
Successtest-method testPBES2_HS256_A128KW()
Successtest-method testPBES2_HS384_A192KW()
Successtest-method testPBES2_HS512_A256KW()

RFC7516Tests back

SuccessFailureSkippedExpected Failure⏱️
4 (100%)0 (0%)0 (0%)0 (0%)0.08s
Successtest-method testA_1_7()
Successtest-method testA_1()
Successtest-method testA_3()
Successtest-method testA_4()

RFC7520Tests back

SuccessFailureSkippedExpected Failure⏱️
12 (100%)0 (0%)0 (0%)0 (0%)0.01s
Successtest-method testSection_5_10()
Successtest-method testSection_5_11()
Successtest-method testSection_5_12()
Successtest-method testSection_5_13()
Successtest-method testSection_5_1()
Successtest-method testSection_5_2()
Successtest-method testSection_5_4()
Successtest-method testSection_5_5()
Successtest-method testSection_5_6()
Successtest-method testSection_5_7()
Successtest-method testSection_5_8()
Successtest-method testSection_5_9()

RSATests back

SuccessFailureSkippedExpected Failure⏱️
2 (100%)0 (0%)0 (0%)0 (0%)0.22s
Successtest-method testRSAOAEP256Cycle()
Successtest-method testRSAOAEPCycle()

JWKTestsback

JWKThumbprintTests back

SuccessFailureSkippedExpected Failure⏱️
1 (100%)0 (0%)0 (0%)0 (0%)0.01s
Successtest-method test_RFC8037_Appendix_A_3()

JWSTestsback

JWSJsonTests back

SuccessFailureSkippedExpected Failure⏱️
7 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testJsonSerializationOneKeyES256_OtherES521()
Successtest-method testJsonSerializationOneKeyOnlyEdDSA()
Successtest-method testJsonSerializationOneKeyOnlyES256()
Successtest-method testJsonSerializationTrueES256Verification_FailES521VerificationWithRandomKey()
Successtest-method testJsonSerializationTwoKeysES256()
Successtest-method testJsonSerializationVerificationFalseWhenKeyHasNoKid()
Successtest-method testJsonSerializationVerificationTrueWhenKeyIsValidWithoutKidAndValidateAllTrue()

JWSTests back

SuccessFailureSkippedExpected Failure⏱️
15 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testAutomaticHeaderAlgorithmES256()
Successtest-method testAutomaticHeaderAlgorithmES256K()
Successtest-method testAutomaticHeaderAlgorithmES384()
Successtest-method testAutomaticHeaderAlgorithmES521()
Successtest-method testEdDSASigningWithDataKey()
Successtest-method testES256KSigningWithDataKey()
Successtest-method testES256SigningWithDataKey()
Successtest-method testES256SigningWithSecKey()
Successtest-method testES384SigningWithDataKey()
Successtest-method testES512SigningWithDataKey()
Successtest-method testJWSTamperedAlgorithm()
Successtest-method testJWSTamperedHeader()
Successtest-method testJWSTamperedPayload()
Successtest-method testJWSUnencodedPayloadCompactString()
Successtest-method testWrongAlgKeySigningWithDataKey()

RFC7515Tests back

SuccessFailureSkippedExpected Failure⏱️
10 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testJWS_RFC7515_A1_2()
Successtest-method testJWS_RFC7515_A2_1_1()
Successtest-method testJWS_RFC7515_A2_1()
Successtest-method testJWS_RFC7515_A3_1_1()
Successtest-method testJWS_RFC7515_A3_1()
Successtest-method testJWS_RFC7515_A4_1_1()
Successtest-method testJWS_RFC7515_A4_1()
Successtest-method testJWS_RFC7515_A5()
Successtest-method testJWS_RFC7515_A6()
Successtest-method testJWS_RFC7515_A7()

JWTTestsback

JWTTests back

SuccessFailureSkippedExpected Failure⏱️
10 (100%)0 (0%)0 (0%)0 (0%)0.00s
Successtest-method testClaims()
Successtest-method testFailAudienceValidation()
Successtest-method testFailExpirationValidation()
Successtest-method testFailIssuedAtValidation()
Successtest-method testFailIssuerValidation()
Successtest-method testFailNotBeforeValidation()
Successtest-method testJWTClaims()
Successtest-method testParseSignedJWT()
Successtest-method testSignAndVerify()
Successtest-method testSingleClaim()