build(deps): bump software.amazon.awssdk:bom from 2.42.9 to 2.42.13 #429
GitHub Actions / Coverage
succeeded
Mar 16, 2026 in 0s
Code Coverage 67.78 %
This run completed at 03/16/2026 11:28:41
Details
Coverage Report: JaCoCo
- elearning-module-parser
| Outcome | Value |
|---|---|
| Code Coverage % | 67.78% |
| ✔️ Number of Lines Covered | 6586 |
| ❌ Number of Lines Missed | 3131 |
| Total Number of Lines | 9717 |
Details:
dev/jcputney/elearning/parser/util
❌ XmlParsingUtils.java
Lines Missed:
- Line #221
} catch (IOException | XMLStreamException e) {
- Line #274
} catch (IOException | XMLStreamException e) {
- Line #342
}
❌ EncodingDetector.java
Lines Missed:
- Line #487
} catch (UnsupportedEncodingException | IllegalArgumentException e) {
- Line #523
} catch (IllegalArgumentException ex) {
❌ FileUtils.java
Lines Missed:
❌ StreamingUtils.java
Lines Missed:
- Line #278
} catch (Exception e) {
- Line #300
} catch (Exception e) {
- Line #302
}
❌ ScormVersionDetector.java
Lines Missed:
- Line #168
} catch (SAXException ex) {
- Line #171
}
- Line #301
}
dev/jcputney/elearning/parser/validation
❌ Validator.java
❌ ValidationResult.java
Lines Missed:
❌ ValidationCodes.java
✔️ ValidationIssue.java
All Lines Covered!
dev/jcputney/elearning/parser/impl/factory
dev/jcputney/elearning/parser/input/aicc/prereq
✔️ AiccPrerequisiteTokenType.java
All Lines Covered!
❌ AiccPrerequisiteToken.java
Lines Missed:
- Line #95
}
- Line #170
.isEquals();
- Line #180
.toHashCode();
✔️ AiccPrerequisiteNodeType.java
All Lines Covered!
❌ AiccPrerequisiteParser.java
Lines Missed:
- Line #105
} catch (Exception ignored) {
- Line #140
break;
- Line #145
break;
- Line #150
break;
- Line #155
break;
- Line #160
break;
- Line #191
return;
- Line #291
}
- Line #315
}
- Line #346
if (!token
- Line #351
String op = token
- Line #358
default -> 0;
- Line #390
} catch (IllegalArgumentException e) {
- Line #402
}
dev/jcputney/elearning/parser/input/scorm2004/ims/ss/objective
❌ Scorm2004ObjectiveMapping.java
Lines Missed:
- Line #151
}
- Line #312
that.isReadSatisfiedStatus())
- Line #319
.isEquals();
- Line #332
.toHashCode();
dev/jcputney/elearning/parser/output/metadata/xapi
dev/jcputney/elearning/parser/validators/rules
❌ ValidationRule.java
dev/jcputney/elearning/parser/input/scorm2004/ims/ss/sequencing
❌ RuleCondition.java
Lines Missed:
- Line #102
}
- Line #205
that.getReferencedObjective())
- Line #209
.isEquals();
- Line #219
.toHashCode();
❌ LimitConditions.java
Lines Missed:
- Line #183
}
- Line #232
}
- Line #254
}
- Line #276
}
- Line #299
}
- Line #319
}
- Line #338
}
- Line #358
.isEquals();
- Line #371
.toHashCode();
❌ AuxiliaryResources.java
Lines Missed:
- Line #68
}
- Line #93
}
- Line #107
that.getAuxiliaryResourceList())
- Line #108
.isEquals();
- Line #115
.toHashCode();
❌ AuxiliaryResource.java
Lines Missed:
- Line #68
}
- Line #86
}
- Line #108
}
- Line #122
that.getAuxiliaryResourceID())
- Line #124
.isEquals();
- Line #132
.toHashCode();
❌ SequencingCollection.java
Lines Missed:
- Line #106
}
- Line #122
.isEquals();
- Line #129
.toHashCode();
dev/jcputney/elearning/parser/input/lom/properties
✔️ ScoreRollupType.java
All Lines Covered!
❌ HeuristicSpec.java
Lines Missed:
- Line #101
}
- Line #111
}
- Line #130
}
- Line #149
}
- Line #168
}
- Line #189
}
- Line #210
}
- Line #228
that.getIsIncompleteSatisfactionMeaningful())
- Line #229
.isEquals();
- Line #240
.toHashCode();
✔️ ReturnToLmsActionType.java
All Lines Covered!
❌ CaptureHistorySpec.java
Lines Missed:
- Line #68
}
- Line #79
}
- Line #99
}
- Line #120
}
- Line #135
.isEquals();
- Line #143
.toHashCode();
✔️ CompletionStatusType.java
All Lines Covered!
❌ BehaviorSpec.java
Lines Missed:
- Line #308
}
- Line #326
}
- Line #344
}
- Line #362
}
- Line #380
}
- Line #399
}
- Line #418
}
- Line #437
}
- Line #456
}
- Line #475
}
- Line #493
}
- Line #512
}
- Line #530
}
- Line #549
}
- Line #569
}
- Line #607
}
- Line #626
}
- Line #646
}
- Line #684
}
- Line #702
}
- Line #722
}
- Line #741
}
- Line #762
}
- Line #781
}
- Line #801
}
- Line #820
}
- Line #839
}
- Line #858
}
- Line #881
}
- Line #918
}
- Line #936
}
- Line #974
that.getForceObjectiveCompletionSetByContent())
- Line #984
.isEquals();
- Line #1024
.toHashCode();
✔️ YesNoType.java
All Lines Covered!
❌ ExitTypesSpec.java
Lines Missed:
- Line #86
}
- Line #97
}
- Line #115
}
- Line #133
}
- Line #151
}
- Line #169
}
- Line #186
.isEquals();
- Line #196
.toHashCode();
✔️ StatusRollupType.java
All Lines Covered!
❌ LaunchSpec.java
Lines Missed:
- Line #77
}
- Line #87
}
- Line #107
}
- Line #127
}
- Line #149
}
- Line #165
.isEquals();
- Line #174
.toHashCode();
✔️ OfflineSynchModeType.java
All Lines Covered!
✔️ InvalidMenuItemActionType.java
All Lines Covered!
✔️ LaunchType.java
All Lines Covered!
❌ PackageProperties.java
Lines Missed:
- Line #106
}
- Line #135
}
- Line #195
}
- Line #214
}
- Line #232
.isEquals();
- Line #243
.toHashCode();
✔️ LookaheadSequencerModeType.java
All Lines Covered!
❌ DebugSpec.java
Lines Missed:
- Line #119
}
- Line #137
}
- Line #156
}
- Line #174
}
- Line #193
}
- Line #212
}
- Line #231
}
- Line #250
}
- Line #269
}
- Line #288
}
- Line #307
}
- Line #330
.isEquals();
- Line #346
.toHashCode();
❌ CommunicationsSpec.java
Lines Missed:
- Line #65
}
- Line #84
}
- Line #102
}
- Line #116
that.getMaxFailedSubmissions())
- Line #118
.isEquals();
- Line #126
.toHashCode();
✔️ ResetRunTimeDataTimingType.java
All Lines Covered!
❌ ExitActionsSpec.java
Lines Missed:
- Line #64
}
- Line #84
}
- Line #104
}
- Line #119
.isEquals();
- Line #127
.toHashCode();
❌ ControlsSpec.java
Lines Missed:
- Line #140
}
- Line #161
}
- Line #183
}
- Line #205
}
- Line #227
}
- Line #249
}
- Line #271
}
- Line #294
}
- Line #316
}
- Line #337
}
- Line #357
}
- Line #375
}
- Line #393
}
- Line #412
}
- Line #438
.isEquals();
- Line #457
.toHashCode();
❌ ScoExitActionSpec.java
Lines Missed:
- Line #69
}
- Line #77
}
- Line #96
}
- Line #115
}
- Line #130
.isEquals();
- Line #138
.toHashCode();
✔️ StatusDisplayType.java
All Lines Covered!
✔️ ExitActionType.java
All Lines Covered!
✔️ EnabledDisabledType.java
All Lines Covered!
dev/jcputney/elearning/parser/validators/rules/scorm12
❌ ResourceReferenceValidRule.java
Lines Missed:
❌ OrganizationsRequiredRule.java
Lines Missed:
❌ ResourcesRequiredRule.java
Lines Missed:
❌ DefaultOrganizationValidRule.java
Lines Missed:
❌ ManifestIdentifierRequiredRule.java
Lines Missed:
❌ ResourceHrefRequiredRule.java
Lines Missed:
dev/jcputney/elearning/parser/input/scorm2004/ims/ss/random
dev/jcputney/elearning/parser/input/scorm12/ims/cp
❌ Scorm12Resource.java
Lines Missed:
- Line #160
}
- Line #246
}
- Line #317
.isEquals();
- Line #331
.toHashCode();
❌ Scorm12Organizations.java
Lines Missed:
- Line #82
}
- Line #184
that.getDefaultOrganization())
- Line #186
.isEquals();
- Line #194
.toHashCode();
❌ Scorm12File.java
Lines Missed:
- Line #128
}
- Line #148
}
- Line #164
.isEquals();
- Line #173
.toHashCode();
❌ Scorm12Item.java
Lines Missed:
- Line #215
}
- Line #425
}
- Line #454
}
- Line #479
.isEquals();
- Line #497
.toHashCode();
❌ Scorm12Organization.java
Lines Missed:
- Line #121
}
- Line #207
}
- Line #244
.isEquals();
- Line #255
.toHashCode();
dev/jcputney/elearning/parser/input/scorm2004/adl/navigation
✔️ HideLMSUI.java
All Lines Covered!
dev/jcputney/elearning/parser/input/scorm2004/adl/types
✔️ TimeLimitAction.java
All Lines Covered!
✔️ RollupConsiderationType.java
All Lines Covered!
✔️ ScormType.java
All Lines Covered!
dev/jcputney/elearning/parser/input/scorm2004/sequencing
❌ ActivityNode.java
Lines Missed:
- Line #92
}
- Line #181
}
- Line #199
}
- Line #217
}
- Line #235
}
- Line #253
}
- Line #271
}
- Line #289
}
- Line #307
}
- Line #328
.isEquals();
- Line #342
.toHashCode();
❌ ActivityTree.java
Lines Missed:
- Line #136
}
- Line #155
}
- Line #170
.isEquals();
- Line #178
.toHashCode();
dev/jcputney/elearning/parser/parsers
❌ Scorm2004Parser.java
Lines Missed:
- Line #85
}
- Line #122
} catch (IOException e) {
- Line #125
} catch (XMLStreamException e) {
- Line #141
return;
- Line #209
} catch (IOException e) {
- Line #211
}
- Line #212
}
- Line #247
return;
- Line #276
}
- Line #291
}
- Line #310
return;
❌ Scorm12Parser.java
Lines Missed:
- Line #85
}
- Line #96
return;
- Line #125
} catch (IOException e) {
- Line #127
} catch (XMLStreamException e) {
- Line #194
} catch (IOException e) {
- Line #212
return;
- Line #230
return;
- Line #241
}
- Line #253
}
- Line #273
return;
❌ BaseParser.java
Lines Missed:
- Line #88
}
- Line #99
}
- Line #154
} catch (IOException | XMLStreamException e) {
- Line #159
} catch (ModuleParsingException e) {
- Line #215
} catch (XMLStreamException e) {
❌ AiccParser.java
Lines Missed:
- Line #117
}
- Line #178
}
- Line #224
} catch (IOException e) {
- Line #332
+ " more)" : ""));
- Line #386
String value = rawValue != null ? rawValue.toString() : null;
- Line #406
} catch (ConfigurationException e) {
- Line #444
break;
❌ XapiParser.java
Lines Missed:
❌ Cmi5Parser.java
Lines Missed:
dev/jcputney/elearning/parser/validators/rules/xapi
❌ LaunchUrlRequiredRule.java
Lines Missed:
❌ ActivitiesRequiredRule.java
Lines Missed:
dev/jcputney/elearning/parser/enums
❌ ModuleEditionType.java
Lines Missed:
- Line #97
case XAPI -> XAPI;
- Line #126
case XAPI -> ModuleType.XAPI;
✔️ ModuleType.java
All Lines Covered!
dev/jcputney/elearning/parser/input/lom/types
✔️ InteractivityType.java
All Lines Covered!
✔️ Structure.java
All Lines Covered!
✔️ Difficulty.java
All Lines Covered!
✔️ SemanticDensity.java
All Lines Covered!
✔️ CopyrightAndOtherRestrictions.java
All Lines Covered!
✔️ Cost.java
All Lines Covered!
✔️ Status.java
All Lines Covered!
✔️ Context.java
All Lines Covered!
✔️ Purpose.java
All Lines Covered!
✔️ AggregationLevel.java
All Lines Covered!
✔️ LearningResourceType.java
All Lines Covered!
❌ ContributeEntity.java
Lines Missed:
- Line #75
}
- Line #94
}
- Line #107
.append(vCard, that.vCard)
- Line #108
.isEquals();
- Line #114
.append(vCard)
- Line #115
.toHashCode();
✔️ Role.java
All Lines Covered!
✔️ Name.java
All Lines Covered!
✔️ Kind.java
All Lines Covered!
✔️ Type.java
All Lines Covered!
✔️ IntendedEndUserRole.java
All Lines Covered!
✔️ InteractivityLevel.java
All Lines Covered!
✔️ RoleMeta.java
All Lines Covered!
dev/jcputney/elearning/parser/input/aicc
❌ CourseStructure.java
Lines Missed:
- Line #248
return;
- Line #250
String normalizedKey = key
- Line #256
return;
- Line #260
return;
- Line #264
return;
- Line #268
return;
- Line #276
}
- Line #349
.isEquals();
- Line #361
.toHashCode();
- Line #374
return;
- Line #401
return;
- Line #409
return;
- Line #414
return;
- Line #432
return;
❌ AiccCourse.java
Lines Missed:
- Line #137
.isEquals();
- Line #146
.toHashCode();
- Line #476
.isEquals();
- Line #494
.toHashCode();
- Line #648
.isEquals();
- Line #658
.toHashCode();
❌ AiccManifest.java
Lines Missed:
- Line #251
return;
- Line #335
continue;
- Line #364
continue;
- Line #464
} catch (IllegalArgumentException e) {
- Line #467
} catch (Exception ignored) {
- Line #491
continue;
- Line #514
continue;
- Line #634
.equals(this.launchUrl))
- Line #838
.isEquals();
- Line #849
.toHashCode();
❌ AiccCompletionCriteria.java
Lines Missed:
- Line #151
return;
- Line #171
.isEquals();
- Line #181
.toHashCode();
❌ CourseDescriptionDeserializer.java
Lines Missed:
❌ AssignableUnit.java
Lines Missed:
- Line #606
.isEquals();
- Line #632
.toHashCode();
dev/jcputney/elearning/parser/validators
✔️ XapiValidator.java
All Lines Covered!
✔️ AiccValidator.java
All Lines Covered!
✔️ Cmi5Validator.java
All Lines Covered!
✔️ Scorm2004ResourceValidator.java
All Lines Covered!
✔️ Scorm12ResourceValidator.java
All Lines Covered!
dev/jcputney/elearning/parser/output
❌ ModuleMetadata.java
Lines Missed:
dev/jcputney/elearning/parser/validators/rules/common
❌ PathSecurityRule.java
Lines Missed:
❌ DuplicateIdentifierRule.java
Lines Missed:
❌ OrphanedResourcesRule.java
Lines Missed:
dev/jcputney/elearning/parser/input/scorm2004/ims/ss/rollup
❌ RollupRules.java
Lines Missed:
- Line #116
}
- Line #213
that.isRollupObjectiveSatisfied())
- Line #217
.isEquals();
- Line #227
.toHashCode();
dev/jcputney/elearning/parser/input/scorm2004/adl/cp
❌ CompletionThreshold.java
Lines Missed:
- Line #90
}
- Line #180
that.getMinProgressMeasure())
- Line #183
.isEquals();
- Line #192
.toHashCode();
dev/jcputney/elearning/parser/output/metadata/aicc
❌ AiccMetadata.java
Lines Missed:
- Line #323
return;
- Line #353
continue;
- Line #453
continue;
- Line #498
return v != null ? v.trim() : null;
- Line #526
} catch (NumberFormatException e) {
- Line #549
continue;
- Line #581
return;
- Line #615
return;
- Line #665
continue;
- Line #804
return;
- Line #809
return;
- Line #865
return a != null ? a : b;
- Line #901
} catch (NumberFormatException e) {
- Line #928
default -> null;
- Line #969
return;
- Line #973
return;
- Line #978
return;
- Line #1054
.isEquals();
- Line #1073
.append(requiresLevel4)
- Line #1074
.toHashCode();
- Line #1242
return;
❌ AiccObjectiveMetadata.java
Lines Missed:
❌ AiccPrerequisite.java
Lines Missed:
- Line #156
.filter(s -> !s.isEmpty())
- Line #266
.isEquals();
- Line #281
.toHashCode();
dev/jcputney/elearning/parser/output/metadata/scorm12
dev/jcputney/elearning/parser/output/metadata
❌ BaseModuleMetadata.java
Lines Missed:
dev/jcputney/elearning/parser/input
✔️ PackageManifest.java
All Lines Covered!
dev/jcputney/elearning/parser/api
❌ ModuleParserFactory.java
❌ StreamingProgressListener.java
❌ AbstractArchiveFileAccess.java
Lines Missed:
- Line #81
return rootPath != null ? rootPath : "";
- Line #94
}
❌ ModuleTypeDetector.java
❌ ParserOptions.java
Lines Missed:
❌ ModuleTypeDetectorPlugin.java
❌ FileAccess.java
Lines Missed:
❌ ModuleParser.java
✔️ ParseResult.java
All Lines Covered!
❌ LoadableMetadata.java
dev/jcputney/elearning/parser/config
❌ FileExistenceValidator.java
Lines Missed:
❌ ModuleSizeCalculator.java
Lines Missed:
dev/jcputney/elearning/parser/input/xapi/types
❌ TextType.java
Lines Missed:
❌ LangString.java
Lines Missed:
dev/jcputney/elearning/parser/input/cmi5/types
✔️ MoveOn.java
All Lines Covered!
✔️ LaunchMethod.java
All Lines Covered!
❌ ReferencesObjectives.java
Lines Missed:
- Line #72
}
- Line #115
.isEquals();
- Line #122
.toHashCode();
dev/jcputney/elearning/parser/input/xapi/tincan
❌ TincanActivity.java
Lines Missed:
- Line #105
}
- Line #172
: null;
- Line #204
: null;
- Line #253
.isEquals();
- Line #264
.toHashCode();
❌ TincanManifest.java
Lines Missed:
- Line #89
.filter(list -> !list.isEmpty())
- Line #105
.filter(list -> !list.isEmpty())
- Line #121
.filter(list -> !list.isEmpty())
- Line #137
.filter(list -> !list.isEmpty())
- Line #193
.isEquals();
- Line #200
.toHashCode();
dev/jcputney/elearning/parser/impl/detector
❌ DefaultModuleTypeDetector.java
Lines Missed:
✔️ ScormDetectorPlugin.java
All Lines Covered!
✔️ Cmi5DetectorPlugin.java
All Lines Covered!
✔️ AiccDetectorPlugin.java
All Lines Covered!
dev/jcputney/elearning/parser/output/metadata/cmi5
dev/jcputney/elearning/parser/input/lom
❌ LOM.java
Lines Missed:
- Line #253
.filter(titles -> !titles.isEmpty())
- Line #271
.filter(descriptions -> !descriptions.isEmpty())
- Line #484
.toHashCode();
❌ Educational.java
Lines Missed:
- Line #554
.toHashCode();
dev/jcputney/elearning/parser/input/common
❌ LangStringDeserializer.java
Lines Missed:
- Line #69
.get("@language")
- Line #75
.get("value")
- Line #79
.get("#text")
✔️ LangStringListDeserializer.java
All Lines Covered!
❌ TrimAndPreserveIndentationDeserializer.java
Lines Missed:
❌ PercentTypeSerializer.java
Lines Missed:
✔️ PercentType.java
All Lines Covered!
✔️ PercentTypeDeserializer.java
All Lines Covered!
dev/jcputney/elearning/parser/input/scorm2004
❌ ADLCP.java
❌ Scorm2004Manifest.java
Lines Missed:
- Line #431
}
- Line #466
.filter(x -> !x.isEmpty())
- Line #498
.getDuration() != null)
- Line #529
.filter(id -> id != null && !id.isEmpty()) // Filter non-null and non-empty IDs
- Line #759
}
- Line #795
}
- Line #813
}
- Line #865
.toHashCode();
❌ ADLNav.java
❌ SequencingUsageDetector.java
Lines Missed:
- Line #170
continue;
- Line #309
return;
- Line #556
|| isNotEmpty(objectives.getObjectiveList());
- Line #650
return hasRuleList(sequencingRules.getPreConditionRules())
- Line #689
return navigationInterface != null && isNotEmpty(navigationInterface.getHideLMSUI());
- Line #734
&& !deliveryControls.isCompletionSetByContent()
❌ ADLSeq.java
❌ IMSSS.java
dev/jcputney/elearning/parser/validators/rules/cmi5
❌ TitleRequiredRule.java
Lines Missed:
❌ CourseRequiredRule.java
Lines Missed:
❌ LaunchUrlRequiredRule.java
Lines Missed:
dev/jcputney/elearning/parser/input/scorm12/adl
❌ Scorm12Prerequisites.java
Lines Missed:
dev/jcputney/elearning/parser/input/scorm12
❌ Scorm12ADLCP.java
Lines Missed:
❌ Scorm12Manifest.java
Lines Missed:
- Line #478
.getDuration() != null)
dev/jcputney/elearning/parser/exception
✔️ ModuleException.java
All Lines Covered!
✔️ RuntimeFileAccessException.java
All Lines Covered!
✔️ ModuleDetectionException.java
All Lines Covered!
✔️ ModuleParsingException.java
All Lines Covered!
dev/jcputney/elearning/parser/input/scorm12/adl/prerequisite
✔️ PrerequisiteParser.java
All Lines Covered!
❌ ParseError.java
Lines Missed:
❌ OrExpression.java
Lines Missed:
❌ ItemReference.java
Lines Missed:
❌ AndExpression.java
Lines Missed:
❌ PrerequisiteExpression.java
❌ NotExpression.java
Lines Missed:
dev/jcputney/elearning/parser/input/scorm2004/adl/sequencing
❌ RollupConsiderations.java
Lines Missed:
- Line #106
}
- Line #127
}
- Line #148
}
- Line #169
}
- Line #189
}
- Line #207
.isEquals();
- Line #218
.toHashCode();
❌ ADLObjective.java
Lines Missed:
- Line #69
}
- Line #88
}
- Line #108
}
- Line #123
.isEquals();
- Line #131
.toHashCode();
❌ MapInfo.java
Lines Missed:
- Line #144
}
- Line #162
}
- Line #181
}
- Line #200
}
- Line #219
}
- Line #239
}
- Line #258
}
- Line #277
}
- Line #296
}
- Line #315
}
- Line #335
}
- Line #355
}
- Line #379
.isEquals();
- Line #396
.toHashCode();
❌ ConstrainChoiceConsiderations.java
Lines Missed:
- Line #83
}
- Line #101
}
- Line #116
.isEquals();
- Line #124
.toHashCode();
dev/jcputney/elearning/parser/validators/rules/aicc
❌ CourseRequiredRule.java
Lines Missed:
❌ LaunchUrlRequiredRule.java
Lines Missed:
❌ TitleRequiredRule.java
Lines Missed:
dev/jcputney/elearning/parser/input/common/serialization
❌ DurationHHMMSSDeserializer.java
Lines Missed:
- Line #165
} catch (NumberFormatException | ArithmeticException e) {
- Line #194
} catch (NumberFormatException e) {
✔️ DurationIso8601Deserializer.java
All Lines Covered!
❌ Scorm2004SchemaValidator.java
Lines Missed:
- Line #138
} catch (Exception ignored) {
- Line #143
} catch (Exception ignored) {
- Line #166
} catch (SAXException e) {
- Line #201
}
- Line #225
}
✔️ InstantDeserializer.java
All Lines Covered!
dev/jcputney/elearning/parser/input/cmi5
❌ Block.java
Lines Missed:
- Line #143
}
- Line #205
}
- Line #243
}
- Line #280
.isEquals();
- Line #292
.toHashCode();
❌ Cmi5Manifest.java
Lines Missed:
- Line #122
}
- Line #144
.filter(strings -> !strings.isEmpty())
- Line #162
.filter(strings -> !strings.isEmpty())
- Line #180
.filter(units -> !units.isEmpty())
- Line #189
.filter(blockList -> !blockList.isEmpty())
- Line #192
.filter(units -> !units.isEmpty())
❌ ObjectivesList.java
Lines Missed:
- Line #90
}
- Line #110
}
- Line #124
.isEquals();
- Line #131
.toHashCode();
dev/jcputney/elearning/parser/impl/access
❌ AbstractS3FileAccess.java
Lines Missed:
- Line #146
}
- Line #214
} catch (Exception e) {
- Line #242
.filter(file -> !smallFileCache.containsKey(file))
- Line #245
return;
- Line #385
.values()
- Line #387
.mapToLong(Long::longValue)
- Line #388
.sum();
- Line #417
}
- Line #423
} catch (Exception e) {
- Line #425
}
- Line #426
}
- Line #519
.keySet()
- Line #520
.iterator()
- Line #632
return; // avoid caching failed lookups or empty files
- Line #639
} catch (Exception ignored) {
❌ LocalFileAccess.java
Lines Missed:
- Line #100
String fileType = Files.isRegularFile(dirPath) ? "regular file" : "special file";
- Line #113
} catch (IOException e) {
- Line #157
} catch (IOException ignored) {
- Line #159
}
- Line #199
} catch (IOException e) {
❌ InMemoryFileAccess.java
Lines Missed:
- Line #320
} catch (Exception e) {
- Line #377
.limit(5)
❌ S3FileAccessV2.java
Lines Missed:
- Line #79
} catch (IOException e) {
- Line #96
} catch (IOException e) {
- Line #232
continue;
- Line #237
continue;
- Line #250
} catch (SdkException e) {
- Line #290
.key(fullPath)
- Line #292
} catch (S3Exception e) {
- Line #324
.prefix();
- Line #325
} catch (SdkException e) {
- Line #359
return key.equals(rootPath) || key.startsWith(rootPath + "/");
- Line #375
return key.startsWith(rootPath + "/") ? key.substring(rootPath.length() + 1) : key;
❌ CachedFileAccess.java
Lines Missed:
❌ S3FileAccessV1.java
Lines Missed:
- Line #73
} catch (IOException e) {
- Line #91
} catch (AmazonServiceException e) {
- Line #143
.filter(key -> !key.endsWith("/")) // Filter out directory markers
- Line #157
} catch (AmazonServiceException e) {
- Line #215
} catch (AmazonServiceException e) {
dev/jcputney/elearning/parser/validators/rules/scorm2004
❌ OrganizationsRequiredRule.java
Lines Missed:
❌ Scorm2004OrphanedResourcesRule.java
Lines Missed:
❌ ResourceHrefRequiredRule.java
Lines Missed:
❌ DefaultOrganizationValidRule.java
Lines Missed:
❌ ResourceReferenceValidRule.java
Lines Missed:
❌ Scorm2004DuplicateIdentifierRule.java
Lines Missed:
- Line #105
.size()),
- Line #107
String.format("Rename duplicate identifiers to be unique. Locations: %s",
dev/jcputney/elearning/parser/impl/provider
✔️ DefaultModuleFileProvider.java
All Lines Covered!
dev/jcputney/elearning/parser/input/scorm2004/ims/cp
❌ Scorm2004Item.java
Lines Missed:
- Line #503
.toHashCode();
❌ Scorm2004Organizations.java
Lines Missed:
- Line #125
result = org
- Line #126
.getItems()
- Line #130
.equals(itemId))
- Line #135
break;
- Line #137
}
- Line #202
.toHashCode();
dev/jcputney/elearning/parser/output/metadata/scorm2004
❌ Scorm2004Metadata.java
Lines Missed:
- Line #185
if (adlcpNs != null && adlcpNs
- Line #258
return collection != null ? collection.stream() : Stream.empty();
- Line #397
.toHashCode();
- Line #637
.filter(id -> id != null && !id.isEmpty())
- Line #801
return;
- Line #845
return;
dev/jcputney/elearning/parser/input/scorm2004/ims/ss/types
✔️ ConditionCombinationType.java
All Lines Covered!
❌ MeasureTypeSerializer.java
Lines Missed:
✔️ RollupActionType.java
All Lines Covered!
✔️ RandomizationTiming.java
All Lines Covered!
✔️ ConditionOperatorType.java
All Lines Covered!
❌ MeasureTypeDeserializer.java
Lines Missed:
✔️ SequencingRuleConditionType.java
All Lines Covered!
❌ MeasureType.java
Lines Missed:
✔️ RollupRuleConditionType.java
All Lines Covered!
✔️ ChildActivitySet.java
All Lines Covered!
Loading