Class files must be compiled with debug information to show line coverage.
Class files must be compiled with debug information to link with source files.
| Element | Missed Instructions | Cov. | Missed Branches | Cov. | Missed | Cxty | Missed | Methods |
| Total | 4,440 of 4,440 | 0% | 559 of 559 | 0% | 372 | 372 | 79 | 79 |
| commit(Secret, Group.CommitOptions, Group.MessageOptions, Group.CommitParameters) | 0% | 0% | 20 | 20 | 1 | 1 | ||
| validateNormalCachedProposals(List, LeafIndex) | 0% | 0% | 46 | 46 | 1 | 1 | ||
| handle(AuthenticatedContent, Group, Group.CommitParameters) | 0% | 0% | 21 | 21 | 1 | 1 | ||
| Group(byte[], AsymmetricCipherKeyPair, byte[], KeyPackage, Welcome, TreeKEMPublicKey, Map, Map) | 0% | 0% | 8 | 8 | 1 | 1 | ||
| validateLeafNode(LeafNode, LeafNodeSource, LeafIndex) | 0% | 0% | 18 | 18 | 1 | 1 | ||
| externalJoin(Secret, AsymmetricCipherKeyPair, KeyPackage, GroupInfo, TreeKEMPublicKey, Group.MessageOptions, LeafIndex, Map) | 0% | 0% | 6 | 6 | 1 | 1 | ||
| Group(byte[], MlsCipherSuite, AsymmetricCipherKeyPair, byte[], LeafNode, List) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| createBranch(byte[], AsymmetricCipherKeyPair, AsymmetricCipherKeyPair, LeafNode, List, List, byte[], Group.CommitOptions) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| resolve(List) | 0% | 0% | 7 | 7 | 1 | 1 | ||
| successor() | 0% | n/a | 1 | 1 | 1 | 1 | ||
| Group(AsymmetricCipherKeyPair, GroupInfo, TreeKEMPublicKey) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| inferCommitType(LeafIndex, List, Group.CommitParameters) | 0% | 0% | 19 | 19 | 1 | 1 | ||
| getGroupInfo(boolean) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| applyUpdate(List) | 0% | 0% | 8 | 8 | 1 | 1 | ||
| handle(byte[], Group, Group.CommitParameters) | 0% | 0% | 7 | 7 | 1 | 1 | ||
| handleBranch(AsymmetricCipherKeyPair, AsymmetricCipherKeyPair, AsymmetricCipherKeyPair, KeyPackage, MLSMessage, TreeKEMPublicKey) | 0% | 0% | 3 | 3 | 1 | 1 | ||
| validateExternalCachedProposals(List) | 0% | 0% | 12 | 12 | 1 | 1 | ||
| reinitCommit(byte[], Group.CommitOptions, Group.MessageOptions) | 0% | 0% | 4 | 4 | 1 | 1 | ||
| cacheProposal(AuthenticatedContent) | 0% | 0% | 5 | 5 | 1 | 1 | ||
| validateRestartCachedProposals(List, ResumptionPSKUsage) | 0% | 0% | 11 | 11 | 1 | 1 | ||
| unprotectToContentAuth(MLSMessage) | 0% | 0% | 7 | 7 | 1 | 1 | ||
| mustResolve(List, LeafIndex) | 0% | 0% | 6 | 6 | 1 | 1 | ||
| importTree(byte[], TreeKEMPublicKey, List) | 0% | 0% | 7 | 7 | 1 | 1 | ||
| preSharedKey(byte[], long, Group.MessageOptions) | 0% | 0% | 3 | 3 | 1 | 1 | ||
| handleReinitCommit(MLSMessage) | 0% | 0% | 3 | 3 | 1 | 1 | ||
| unprotect(MLSMessage) | 0% | 0% | 4 | 4 | 1 | 1 | ||
| preSharedKey(byte[], Group.MessageOptions) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| validatePSK(Proposal.PreSharedKey) | 0% | 0% | 6 | 6 | 1 | 1 | ||
| protect(AuthenticatedContent, int) | 0% | 0% | 3 | 3 | 1 | 1 | ||
| validateProposal(LeafIndex, Proposal) | 0% | 0% | 8 | 8 | 1 | 1 | ||
| validateReinitProposals(List) | 0% | 0% | 8 | 8 | 1 | 1 | ||
| validateReInitCachedProposals(List) | 0% | 0% | 8 | 8 | 1 | 1 | ||
| validateKeyPackage(KeyPackage) | 0% | 0% | 7 | 7 | 1 | 1 | ||
| updateEpochSecrets(byte[], List, byte[]) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| updateProposal(AsymmetricCipherKeyPair, Group.LeafNodeOptions) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| newMemberAdd(byte[], long, KeyPackage, AsymmetricCipherKeyPair) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| verifyExternal(AuthenticatedContent) | 0% | 0% | 3 | 3 | 1 | 1 | ||
| apply(List) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| leafForRoster(LeafIndex) | 0% | 0% | 4 | 4 | 1 | 1 | ||
| applyGCE(List) | 0% | 0% | 4 | 4 | 1 | 1 | ||
| validateRemove(Proposal.Remove) | 0% | 0% | 6 | 6 | 1 | 1 | ||
| applyRemove(List) | 0% | 0% | 4 | 4 | 1 | 1 | ||
| validateGCE(Proposal.GroupContextExtensions) | 0% | 0% | 4 | 4 | 1 | 1 | ||
| extensionsSupported(List) | 0% | 0% | 4 | 4 | 1 | 1 | ||
| applyPSK(List) | 0% | 0% | 3 | 3 | 1 | 1 | ||
| applyAdd(List) | 0% | 0% | 3 | 3 | 1 | 1 | ||
| sign(Sender, Commit, byte[], boolean) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| sign(Sender, Proposal, byte[], boolean) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| verifyAuth(AuthenticatedContent) | 0% | 0% | 5 | 5 | 1 | 1 | ||
| sign(Sender, byte[], byte[], boolean) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| preSharedKeyProposal(Secret) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| groupContextExtensions(List, Group.MessageOptions) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| pathRequired(List) | 0% | 0% | 4 | 4 | 1 | 1 | ||
| verifyInternal(AuthenticatedContent) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| protect(byte[], byte[], int) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| validateCachedProposals(List, LeafIndex, Group.CommitParameters) | 0% | 0% | 5 | 5 | 1 | 1 | ||
| reinit(byte[], ProtocolVersion, MlsCipherSuite, List, Group.MessageOptions) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| remove(LeafIndex, Group.MessageOptions) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| verifyNewMemberProposal(AuthenticatedContent) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| verifyNewMemberCommit(AuthenticatedContent) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| add(KeyPackage, Group.MessageOptions) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| validateReinit(Proposal.ReInit) | 0% | 0% | 4 | 4 | 1 | 1 | ||
| getGroupContext() | 0% | n/a | 1 | 1 | 1 | 1 | ||
| update(Proposal, Group.MessageOptions) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| validateUpdate(LeafIndex, Proposal.Update) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| removeProposal(LeafIndex) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| validateExternalInit(Proposal.ExternalInit) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| addProposal(KeyPackage) | 0% | 0% | 2 | 2 | 1 | 1 | ||
| insertExternalPsk(Secret, byte[]) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| handle(byte[], Group) | 0% | n/a | 1 | 1 | 1 | 1 | ||
| getEpochAuthenticator() | 0% | n/a | 1 | 1 | 1 | 1 | ||
| getSuite() | 0% | n/a | 1 | 1 | 1 | 1 | ||
| getExtensions() | 0% | n/a | 1 | 1 | 1 | 1 | ||
| getKeySchedule() | 0% | n/a | 1 | 1 | 1 | 1 | ||
| getTree() | 0% | n/a | 1 | 1 | 1 | 1 | ||
| getEpoch() | 0% | n/a | 1 | 1 | 1 | 1 | ||
| getGroupID() | 0% | n/a | 1 | 1 | 1 | 1 | ||
| getIndex() | 0% | n/a | 1 | 1 | 1 | 1 | ||
| Group() | 0% | n/a | 1 | 1 | 1 | 1 |