Skip to content

Commit 3d52a7e

Browse files
committed
Include backup flags in RegisteredCredential generator
1 parent 4d1485e commit 3d52a7e

File tree

2 files changed

+20
-9
lines changed

2 files changed

+20
-9
lines changed

webauthn-server-core/src/test/scala/com/yubico/webauthn/Generators.scala

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -73,13 +73,21 @@ object Generators {
7373
userHandle <- arbitrary[ByteArray]
7474
publicKeyCose <- arbitrary[ByteArray]
7575
signatureCount <- arbitrary[Int]
76-
} yield RegisteredCredential
77-
.builder()
78-
.credentialId(credentialId)
79-
.userHandle(userHandle)
80-
.publicKeyCose(publicKeyCose)
81-
.signatureCount(signatureCount)
82-
.build()
76+
backupFlags <- Gen.option(arbitraryBackupFlags.arbitrary)
77+
} yield {
78+
val b = RegisteredCredential
79+
.builder()
80+
.credentialId(credentialId)
81+
.userHandle(userHandle)
82+
.publicKeyCose(publicKeyCose)
83+
.signatureCount(signatureCount)
84+
backupFlags.foreach({
85+
case ((be, bs)) =>
86+
b.backupEligible(be)
87+
b.backupState(bs)
88+
})
89+
b.build()
90+
}
8391
)
8492
)
8593

webauthn-server-core/src/test/scala/com/yubico/webauthn/data/Generators.scala

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -273,13 +273,16 @@ object Generators {
273273
)
274274
)
275275

276+
val arbitraryBackupFlags: Arbitrary[(Boolean, Boolean)] = Arbitrary(
277+
arbitrary[(Boolean, Boolean)].map({ case (be, bs) => (be, be && bs) })
278+
)
279+
276280
def authenticatorDataBytes(
277281
extensionsGen: Gen[Option[CBORObject]],
278282
rpIdHashGen: Gen[ByteArray] = byteArray(32),
279283
upFlagGen: Gen[Boolean] = Gen.const(true),
280284
uvFlagGen: Gen[Boolean] = arbitrary[Boolean],
281-
backupFlagsGen: Gen[(Boolean, Boolean)] =
282-
arbitrary[(Boolean, Boolean)].map({ case (be, bs) => (be, be && bs) }),
285+
backupFlagsGen: Gen[(Boolean, Boolean)] = arbitraryBackupFlags.arbitrary,
283286
signatureCountGen: Gen[ByteArray] = byteArray(4),
284287
): Gen[ByteArray] =
285288
halfsized(

0 commit comments

Comments
 (0)