Skip to content

Conversation

@domachine
Copy link
Contributor

No description provided.

@github-actions
Copy link

github-actions bot commented Sep 2, 2025

Coverage after merging 379-informative-test-6.3.16 into main

99.48%

Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
context.js100%100%100%100%
cwe.js100%100%100%100%
informativeTests.js100%100%100%100%
mandatoryTests.js100%100%100%100%
optionalTests.js100%100%100%100%
schemaTests.js100%100%100%100%
strip.js100%100%100%100%
validate.js100%100%100%100%
validateStrict.js90.91%66.67%100%93.10%27, 27–28
csaf_2_1
   informativeTests.js100%100%100%100%
   mandatoryTests.js100%100%100%100%
   recommendedTests.js100%100%100%100%
   schemaTests.js100%100%100%100%
   sharingGroup.js100%100%100%100%
csaf_2_1/informativeTests
   informativeTest_6_3_1.js100%100%100%100%
   informativeTest_6_3_12.js100%100%100%100%
   informativeTest_6_3_16.js96.59%81.82%100%98.67%146, 30–32, 34, 41
   informativeTest_6_3_2.js100%100%100%100%
   informativeTest_6_3_4.js100%100%100%100%
csaf_2_1/mandatoryTests
   mandatoryTest_6_1_1.js44.75%77.78%37.50%43.88%100–116, 127–167, 175–186, 194–212, 220–238, 246–268, 71–89, 92–99
   mandatoryTest_6_1_10.js99.64%96.97%100%100%179
   mandatoryTest_6_1_11.js89.72%80%100%90.63%54–56, 64–71
   mandatoryTest_6_1_13.js99.53%96.15%100%100%137
   mandatoryTest_6_1_27_12.js100%100%100%100%
   mandatoryTest_6_1_27_14.js100%100%100%100%
   mandatoryTest_6_1_27_15.js100%100%100%100%
   mandatoryTest_6_1_27_16.js100%100%100%100%
   mandatoryTest_6_1_27_17.js99.15%93.75%100%100%80
   mandatoryTest_6_1_27_19.js92.31%80%100%94.06%79–80, 82–88
   mandatoryTest_6_1_34.js95.92%81.82%100%97.65%55–57, 77
   mandatoryTest_6_1_35.js100%100%100%100%
   mandatoryTest_6_1_36.js97.10%72.22%100%99.10%146–148, 156, 183, 185, 199
   mandatoryTest_6_1_37.js76.39%58.33%66.67%77.52%150, 150–174, 179, 183, 187–191, 194–214
   mandatoryTest_6_1_39.js100%100%100%100%
   mandatoryTest_6_1_40.js100%100%100%100%
   mandatoryTest_6_1_41.js100%100%100%100%
   mandatoryTest_6_1_43.js87.78%88.24%80%87.94%131–132, 142–149, 183–198
   mandatoryTest_6_1_52.js100%100%100%100%
   mandatoryTest_6_1_6.js100%100%100%100%
   mandatoryTest_6_1_7.js100%100%100%100%
   mandatoryTest_6_1_8.js93.10%60%100%98.39%100, 103, 112, 115, 74–76, 81, 88, 91
   mandatoryTest_6_1_9.js100%100%100%100%
   mandatoryTests_6_1_38.js100%100%100%100%
csaf_2_1/recommendedTests
   recommendedTest_6_2_1.js100%100%100%100%
   recommendedTest_6_2_10.js70%100%0%75%7–8
   recommendedTest_6_2_11.js70%100%0%75%7–8
   recommendedTest_6_2_12.js100%100%100%100%
   recommendedTest_6_2_13.js100%100%100%100%
   recommendedTest_6_2_14.js100%100%100%100%
   recommendedTest_6_2_15.js100%100%100%100%
   recommendedTest_6_2_16.js100%100%100%100%
   recommendedTest_6_2_17.js100%100%100%100%
   recommendedTest_6_2_18.js100%100%100%100%
   recommendedTest_6_2_19.js70%100%0%75%7–8
   recommendedTest_6_2_2.js100%100%100%100%
   recommendedTest_6_2_20.js70%100%0%75%7–8
   recommendedTest_6_2_22.js100%100%100%100%
   recommendedTest_6_2_23.js100%100%100%100%
   recommendedTest_6_2_27.js97.24%82.61%100%98.96%124–126, 141, 145, 166
   recommendedTest_6_2_28.js100%100%100%100%
   recommendedTest_6_2_29.js100%100%100%100%
   recommendedTest_6_2_3.js97.67%87.50%100%98.70%63–64
   recommendedTest_6_2_38.js100%100%100%100%
   recommendedTest_6_2_4.js100%100%100%100%
   recommendedTest_6_2_5.js100%100%100%100%
   recommendedTest_6_2_6.js100%100%100%100%
   recommendedTest_6_2_7.js100%100%100%100%
   recommendedTest_6_2_8.js100%100%100%100%
   recommendedTest_6_2_9.js100%100%100%100%
csaf_2_1/schemaTests
   csaf_2_1.js93.10%100%100%92.31%22–23
   csaf_2_1_strict.js93.10%100%100%92.31%22–23
csaf_2_1/schemaTests/csaf_2_1
   schema.js100%100%100%100%
csaf_2_1/schemaTests/csaf_2_1_strict
   schema.js100%100%100%100%
lib
   cwec.js100%100%100%100%
   informativeTests.js100%100%100%100%
   mandatoryTests.js100%100%100%100%
   optionalTests.js100%100%100%100%
   schemaTests.js100%100%100%100%
   strip.js100%100%100%100%
   validate.js100%100%100%100%
lib/cwec
   2.11.js100%100%100%100%
   3.0.js100%100%100%100%
   4.10.js100%100%100%100%
   4.12.js100%100%100%100%
   4.13.js100%100%100%100%
   4.14.js100%100%100%100%
   4.9.js100%100%100%100%
lib/informativeTests
   informativeTest_6_3_1.js100%100%100%100%
   informativeTest_6_3_10.js96.39%90%100%97.18%47–49
   informativeTest_6_3_11.js96.63%91.67%100%97.33%47–49
   informativeTest_6_3_2.js100%100%100%100%
   informativeTest_6_3_3.js100%100%100%100%
   informativeTest_6_3_4.js100%100%100%100%
   informativeTest_6_3_5.js97.96%83.33%100%100%30
   informativeTest_6_3_6.js99.02%95.52%100%99.55%196–198, 222, 402
   informativeTest_6_3_7.js96%87.50%100%97.59%53–55, 61
   informativeTest_6_3_8.js97.66%83.33%100%99.05%239–241, 244, 246, 298–300, 394, 399, 416
   informativeTest_6_3_9.js95.97%89.47%100%96.83%42–44, 54–56
lib/informativeTests/shared
   testURL.js100%100%100%100%
lib/mandatoryTests
   mandatoryTest_6_1_1.js100%100%100%100%
   mandatoryTest_6_1_10.js98.60%92.59%100%100%106, 97
   mandatoryTest_6_1_11.js100%100%100%100%
   mandatoryTest_6_1_12.js100%100%100%100%
   mandatoryTest_6_1_13.js99.28%95.83%100%100%109
   mandatoryTest_6_1_14.js100%100%100%100%
   mandatoryTest_6_1_15.js100%100%100%100%
   mandatoryTest_6_1_16.js100%100%100%100%
   mandatoryTest_6_1_17.js100%100%100%100%
   mandatoryTest_6_1_18.js100%100%100%100%
   mandatoryTest_6_1_19.js100%100%100%100%
   mandatoryTest_6_1_2.js98%87.50%100%100%110, 52, 68
   mandatoryTest_6_1_20.js100%100%100%100%
   mandatoryTest_6_1_21.js100%100%100%100%
   mandatoryTest_6_1_22.js100%100%100%100%
   mandatoryTest_6_1_23.js98.44%92.31%100%100%39
   mandatoryTest_6_1_24.js96.63%83.33%100%100%50, 62, 64
   mandatoryTest_6_1_25.js98.94%93.75%100%100%139, 144
   mandatoryTest_6_1_26.js100%100%100%100%
   mandatoryTest_6_1_27_1.js100%100%100%100%
   mandatoryTest_6_1_27_10.js95.58%80.95%100%98.90%52, 54, 57–59
   mandatoryTest_6_1_27_11.js100%100%100%100%
   mandatoryTest_6_1_27_2.js100%100%100%100%
   mandatoryTest_6_1_27_3.js100%100%100%100%
   mandatoryTest_6_1_27_4.js100%100%100%100%
   mandatoryTest_6_1_27_5.js100%100%100%100%
   mandatoryTest_6_1_27_6.js100%100%100%100%
   mandatoryTest_6_1_27_7.js100%100%100%100%
   mandatoryTest_6_1_27_8.js100%100%100%100%
   mandatoryTest_6_1_27_9.js98.82%94.87%100%100%55, 92
   mandatoryTest_6_1_28.js100%100%100%100%
   mandatoryTest_6_1_29.js100%100%100%100%
   mandatoryTest_6_1_3.js100%100%100%100%
   mandatoryTest_6_1_30.js100%100%100%100%
   mandatoryTest_6_1_31.js100%100%100%100%
   mandatoryTest_6_1_32.js100%100%100%100%
   mandatoryTest_6_1_33.js100%100%100%100%
   mandatoryTest_6_1_4.js100%100%100%100%
   mandatoryTest_6_1_5.js81.36%100%75%79.21%100–101, 81–99
   mandatoryTest_6_1_6.js100%100%100%100%
   mandatoryTest_6_1_7.js97.54%90.63%100%100%62, 77, 81
   mandatoryTest_6_1_8.js94.02%72.22%100%97.96%61–63, 74, 77, 86, 89
   mandatoryTest_6_1_9.js100%100%100%100%
lib/mandatoryTests/shared
   docUtils.js98.60%92.68%100%100%139, 56, 72
lib/optionalTests
   optionalTest_6_2_1.js98.76%91.30%100%99.72%134, 145, 302, 348–349
   optionalTest_6_2_10.js100%100%100%100%
   optionalTest_6_2_11.js100%100%100%100%
   optionalTest_6_2_12.js100%100%100%100%
   optionalTest_6_2_13.js100%100%100%100%
   optionalTest_6_2_14.js100%100%100%100%
   optionalTest_6_2_15.js100%100%100%100%
   optionalTest_6_2_16.js95.95%89.47%100%96.85%114–116, 88–90
   optionalTest_6_2_17.js100%100%100%100%
   optionalTest_6_2_18.js96.84%92.31%100%97.50%48–50
   optionalTest_6_2_19.js96.05%83.72%100%98.05%108, 195, 206, 251–256, 79, 88, 90
   optionalTest_6_2_2.js98.35%92.31%100%99.07%91–92
   optionalTest_6_2_20.js94.59%71.43%100%100%19, 23
   optionalTest_6_2_3.js100%100%100%100%
   optionalTest_6_2_4.js100%100%100%100%
   optionalTest_6_2_5.js100%100%100%100%
   optionalTest_6_2_6.js100%100%100%100%
   optionalTest_6_2_7.js100%100%100%100%
   optionalTest_6_2_8.js100%100%100%100%
   optionalTest_6_2_9.js100%100%100%100%
lib/optionalTests/shared
   checkForUnsafeHashAlgorithms.js98.55%88.89%100%100%31
lib/schemaTests
   csaf_2_0.js96.88%80%100%100%23
   csaf_2_0_strict.js96.88%80%100%100%23
lib/schemaTests/csaf_2_0
   schema.js100%100%100%100%
lib/schemaTests/csaf_2_0_strict
   schema.js100%100%100%100%
lib/shared
   bcpLanguageTagChecker.js100%100%100%100%
   csafAjv.js100%100%100%100%
   csafHelpers.js100%100%100%100%
   cvss2.js98.39%84.62%100%99.41%115, 120–122, 125, 9
   cvss3.js100%100%100%100%
   cvss4.js98.71%88.89%83.33%99.11%1022–1028, 1057–1059, 1087, 1112, 1115
   cwec.js100%100%100%100%
   dateHelper.js95.45%80%100%100%16–17
   first.js100%100%100%100%
   sortObjectKeys.js100%100%100%100%
lib/shared/bcpLanguageTagChecker
   extensions.js100%100%100%100%
   subtags.js100%100%100%100%
lib/shared/csafAjv
   Decision_Point-1-0-1.js100%100%100%100%
   Decision_Point_Value_Selection-1-0-1.js100%100%100%100%
   cvss-v2.0.js100%100%100%100%
   cvss-v3.0.js100%100%100%100%
   cvss-v3.1.js100%100%100%100%
   cvss-v4.0.js100%100%100%100%
   format-assertion.js100%100%100%100%
   meta.js100%100%100%100%
lib/shared/csafHelpers
   walkHashes.js100%100%100%100%

Copy link
Contributor

@rainer-exxcellent rainer-exxcellent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should be documented that a languagetool server must be started before the tests are run.
A little more documentation would be helpful in order to understand the code.

Copy link
Contributor

@rainer-exxcellent rainer-exxcellent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A little more documentation would be helpful in order to understand the code.
It should be documented that a language tool server has to be started before executing the Spell check

@domachine domachine force-pushed the 379-informative-test-6.3.16 branch from 5bf5a97 to 1b2415e Compare September 3, 2025 14:56
@github-actions
Copy link

github-actions bot commented Sep 3, 2025

Coverage after merging 379-informative-test-6.3.16 into main

99.48%

Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
context.js100%100%100%100%
cwe.js100%100%100%100%
informativeTests.js100%100%100%100%
mandatoryTests.js100%100%100%100%
optionalTests.js100%100%100%100%
schemaTests.js100%100%100%100%
strip.js100%100%100%100%
validate.js100%100%100%100%
validateStrict.js90.91%66.67%100%93.10%27, 27–28
csaf_2_1
   informativeTests.js100%100%100%100%
   mandatoryTests.js100%100%100%100%
   recommendedTests.js100%100%100%100%
   schemaTests.js100%100%100%100%
   sharingGroup.js100%100%100%100%
csaf_2_1/informativeTests
   informativeTest_6_3_1.js100%100%100%100%
   informativeTest_6_3_12.js100%100%100%100%
   informativeTest_6_3_16.js97.24%82.76%100%99.46%101, 137, 181, 41–42, 60
   informativeTest_6_3_2.js100%100%100%100%
   informativeTest_6_3_4.js100%100%100%100%
csaf_2_1/mandatoryTests
   mandatoryTest_6_1_1.js44.75%77.78%37.50%43.88%100–116, 127–167, 175–186, 194–212, 220–238, 246–268, 71–89, 92–99
   mandatoryTest_6_1_10.js99.64%96.97%100%100%179
   mandatoryTest_6_1_11.js89.72%80%100%90.63%54–56, 64–71
   mandatoryTest_6_1_13.js99.53%96.15%100%100%137
   mandatoryTest_6_1_27_12.js100%100%100%100%
   mandatoryTest_6_1_27_14.js100%100%100%100%
   mandatoryTest_6_1_27_15.js100%100%100%100%
   mandatoryTest_6_1_27_16.js100%100%100%100%
   mandatoryTest_6_1_27_17.js99.15%93.75%100%100%80
   mandatoryTest_6_1_27_19.js92.31%80%100%94.06%79–80, 82–88
   mandatoryTest_6_1_34.js95.92%81.82%100%97.65%55–57, 77
   mandatoryTest_6_1_35.js100%100%100%100%
   mandatoryTest_6_1_36.js97.10%72.22%100%99.10%146–148, 156, 183, 185, 199
   mandatoryTest_6_1_37.js76.39%58.33%66.67%77.52%150, 150–174, 179, 183, 187–191, 194–214
   mandatoryTest_6_1_39.js100%100%100%100%
   mandatoryTest_6_1_40.js100%100%100%100%
   mandatoryTest_6_1_41.js100%100%100%100%
   mandatoryTest_6_1_43.js87.78%88.24%80%87.94%131–132, 142–149, 183–198
   mandatoryTest_6_1_52.js100%100%100%100%
   mandatoryTest_6_1_6.js100%100%100%100%
   mandatoryTest_6_1_7.js100%100%100%100%
   mandatoryTest_6_1_8.js93.10%60%100%98.39%100, 103, 112, 115, 74–76, 81, 88, 91
   mandatoryTest_6_1_9.js100%100%100%100%
   mandatoryTests_6_1_38.js100%100%100%100%
csaf_2_1/recommendedTests
   recommendedTest_6_2_1.js100%100%100%100%
   recommendedTest_6_2_10.js70%100%0%75%7–8
   recommendedTest_6_2_11.js70%100%0%75%7–8
   recommendedTest_6_2_12.js100%100%100%100%
   recommendedTest_6_2_13.js100%100%100%100%
   recommendedTest_6_2_14.js100%100%100%100%
   recommendedTest_6_2_15.js100%100%100%100%
   recommendedTest_6_2_16.js100%100%100%100%
   recommendedTest_6_2_17.js100%100%100%100%
   recommendedTest_6_2_18.js100%100%100%100%
   recommendedTest_6_2_19.js70%100%0%75%7–8
   recommendedTest_6_2_2.js100%100%100%100%
   recommendedTest_6_2_20.js70%100%0%75%7–8
   recommendedTest_6_2_22.js100%100%100%100%
   recommendedTest_6_2_23.js100%100%100%100%
   recommendedTest_6_2_27.js97.24%82.61%100%98.96%124–126, 141, 145, 166
   recommendedTest_6_2_28.js100%100%100%100%
   recommendedTest_6_2_29.js100%100%100%100%
   recommendedTest_6_2_3.js97.67%87.50%100%98.70%63–64
   recommendedTest_6_2_38.js100%100%100%100%
   recommendedTest_6_2_4.js100%100%100%100%
   recommendedTest_6_2_5.js100%100%100%100%
   recommendedTest_6_2_6.js100%100%100%100%
   recommendedTest_6_2_7.js100%100%100%100%
   recommendedTest_6_2_8.js100%100%100%100%
   recommendedTest_6_2_9.js100%100%100%100%
csaf_2_1/schemaTests
   csaf_2_1.js93.10%100%100%92.31%22–23
   csaf_2_1_strict.js93.10%100%100%92.31%22–23
csaf_2_1/schemaTests/csaf_2_1
   schema.js100%100%100%100%
csaf_2_1/schemaTests/csaf_2_1_strict
   schema.js100%100%100%100%
lib
   cwec.js100%100%100%100%
   informativeTests.js100%100%100%100%
   mandatoryTests.js100%100%100%100%
   optionalTests.js100%100%100%100%
   schemaTests.js100%100%100%100%
   strip.js100%100%100%100%
   validate.js100%100%100%100%
lib/cwec
   2.11.js100%100%100%100%
   3.0.js100%100%100%100%
   4.10.js100%100%100%100%
   4.12.js100%100%100%100%
   4.13.js100%100%100%100%
   4.14.js100%100%100%100%
   4.9.js100%100%100%100%
lib/informativeTests
   informativeTest_6_3_1.js100%100%100%100%
   informativeTest_6_3_10.js96.39%90%100%97.18%47–49
   informativeTest_6_3_11.js96.63%91.67%100%97.33%47–49
   informativeTest_6_3_2.js100%100%100%100%
   informativeTest_6_3_3.js100%100%100%100%
   informativeTest_6_3_4.js100%100%100%100%
   informativeTest_6_3_5.js97.96%83.33%100%100%30
   informativeTest_6_3_6.js99.02%95.52%100%99.55%196–198, 222, 402
   informativeTest_6_3_7.js96%87.50%100%97.59%53–55, 61
   informativeTest_6_3_8.js97.66%83.33%100%99.05%239–241, 244, 246, 298–300, 394, 399, 416
   informativeTest_6_3_9.js95.97%89.47%100%96.83%42–44, 54–56
lib/informativeTests/shared
   testURL.js100%100%100%100%
lib/mandatoryTests
   mandatoryTest_6_1_1.js100%100%100%100%
   mandatoryTest_6_1_10.js98.60%92.59%100%100%106, 97
   mandatoryTest_6_1_11.js100%100%100%100%
   mandatoryTest_6_1_12.js100%100%100%100%
   mandatoryTest_6_1_13.js99.28%95.83%100%100%109
   mandatoryTest_6_1_14.js100%100%100%100%
   mandatoryTest_6_1_15.js100%100%100%100%
   mandatoryTest_6_1_16.js100%100%100%100%
   mandatoryTest_6_1_17.js100%100%100%100%
   mandatoryTest_6_1_18.js100%100%100%100%
   mandatoryTest_6_1_19.js100%100%100%100%
   mandatoryTest_6_1_2.js98%87.50%100%100%110, 52, 68
   mandatoryTest_6_1_20.js100%100%100%100%
   mandatoryTest_6_1_21.js100%100%100%100%
   mandatoryTest_6_1_22.js100%100%100%100%
   mandatoryTest_6_1_23.js98.44%92.31%100%100%39
   mandatoryTest_6_1_24.js96.63%83.33%100%100%50, 62, 64
   mandatoryTest_6_1_25.js98.94%93.75%100%100%139, 144
   mandatoryTest_6_1_26.js100%100%100%100%
   mandatoryTest_6_1_27_1.js100%100%100%100%
   mandatoryTest_6_1_27_10.js95.58%80.95%100%98.90%52, 54, 57–59
   mandatoryTest_6_1_27_11.js100%100%100%100%
   mandatoryTest_6_1_27_2.js100%100%100%100%
   mandatoryTest_6_1_27_3.js100%100%100%100%
   mandatoryTest_6_1_27_4.js100%100%100%100%
   mandatoryTest_6_1_27_5.js100%100%100%100%
   mandatoryTest_6_1_27_6.js100%100%100%100%
   mandatoryTest_6_1_27_7.js100%100%100%100%
   mandatoryTest_6_1_27_8.js100%100%100%100%
   mandatoryTest_6_1_27_9.js98.82%94.87%100%100%55, 92
   mandatoryTest_6_1_28.js100%100%100%100%
   mandatoryTest_6_1_29.js100%100%100%100%
   mandatoryTest_6_1_3.js100%100%100%100%
   mandatoryTest_6_1_30.js100%100%100%100%
   mandatoryTest_6_1_31.js100%100%100%100%
   mandatoryTest_6_1_32.js100%100%100%100%
   mandatoryTest_6_1_33.js100%100%100%100%
   mandatoryTest_6_1_4.js100%100%100%100%
   mandatoryTest_6_1_5.js81.36%100%75%79.21%100–101, 81–99
   mandatoryTest_6_1_6.js100%100%100%100%
   mandatoryTest_6_1_7.js97.54%90.63%100%100%62, 77, 81
   mandatoryTest_6_1_8.js94.02%72.22%100%97.96%61–63, 74, 77, 86, 89
   mandatoryTest_6_1_9.js100%100%100%100%
lib/mandatoryTests/shared
   docUtils.js98.60%92.68%100%100%139, 56, 72
lib/optionalTests
   optionalTest_6_2_1.js98.76%91.30%100%99.72%134, 145, 302, 348–349
   optionalTest_6_2_10.js100%100%100%100%
   optionalTest_6_2_11.js100%100%100%100%
   optionalTest_6_2_12.js100%100%100%100%
   optionalTest_6_2_13.js100%100%100%100%
   optionalTest_6_2_14.js100%100%100%100%
   optionalTest_6_2_15.js100%100%100%100%
   optionalTest_6_2_16.js95.95%89.47%100%96.85%114–116, 88–90
   optionalTest_6_2_17.js100%100%100%100%
   optionalTest_6_2_18.js96.84%92.31%100%97.50%48–50
   optionalTest_6_2_19.js96.05%83.72%100%98.05%108, 195, 206, 251–256, 79, 88, 90
   optionalTest_6_2_2.js98.35%92.31%100%99.07%91–92
   optionalTest_6_2_20.js94.59%71.43%100%100%19, 23
   optionalTest_6_2_3.js100%100%100%100%
   optionalTest_6_2_4.js100%100%100%100%
   optionalTest_6_2_5.js100%100%100%100%
   optionalTest_6_2_6.js100%100%100%100%
   optionalTest_6_2_7.js100%100%100%100%
   optionalTest_6_2_8.js100%100%100%100%
   optionalTest_6_2_9.js100%100%100%100%
lib/optionalTests/shared
   checkForUnsafeHashAlgorithms.js98.55%88.89%100%100%31
lib/schemaTests
   csaf_2_0.js96.88%80%100%100%23
   csaf_2_0_strict.js96.88%80%100%100%23
lib/schemaTests/csaf_2_0
   schema.js100%100%100%100%
lib/schemaTests/csaf_2_0_strict
   schema.js100%100%100%100%
lib/shared
   bcpLanguageTagChecker.js100%100%100%100%
   csafAjv.js100%100%100%100%
   csafHelpers.js100%100%100%100%
   cvss2.js98.39%84.62%100%99.41%115, 120–122, 125, 9
   cvss3.js100%100%100%100%
   cvss4.js98.71%88.89%83.33%99.11%1022–1028, 1057–1059, 1087, 1112, 1115
   cwec.js100%100%100%100%
   dateHelper.js95.45%80%100%100%16–17
   first.js100%100%100%100%
   sortObjectKeys.js100%100%100%100%
lib/shared/bcpLanguageTagChecker
   extensions.js100%100%100%100%
   subtags.js100%100%100%100%
lib/shared/csafAjv
   Decision_Point-1-0-1.js100%100%100%100%
   Decision_Point_Value_Selection-1-0-1.js100%100%100%100%
   cvss-v2.0.js100%100%100%100%
   cvss-v3.0.js100%100%100%100%
   cvss-v3.1.js100%100%100%100%
   cvss-v4.0.js100%100%100%100%
   format-assertion.js100%100%100%100%
   meta.js100%100%100%100%
lib/shared/csafHelpers
   walkHashes.js100%100%100%100%

@domachine domachine force-pushed the 379-informative-test-6.3.16 branch from 1b2415e to d3d9dd2 Compare September 3, 2025 15:13
@github-actions
Copy link

github-actions bot commented Sep 3, 2025

Coverage after merging 379-informative-test-6.3.16 into main

99.48%

Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
context.js100%100%100%100%
cwe.js100%100%100%100%
informativeTests.js100%100%100%100%
mandatoryTests.js100%100%100%100%
optionalTests.js100%100%100%100%
schemaTests.js100%100%100%100%
strip.js100%100%100%100%
validate.js100%100%100%100%
validateStrict.js90.91%66.67%100%93.10%27, 27–28
csaf_2_1
   informativeTests.js100%100%100%100%
   mandatoryTests.js100%100%100%100%
   recommendedTests.js100%100%100%100%
   schemaTests.js100%100%100%100%
   sharingGroup.js100%100%100%100%
csaf_2_1/informativeTests
   informativeTest_6_3_1.js100%100%100%100%
   informativeTest_6_3_12.js100%100%100%100%
   informativeTest_6_3_16.js97.24%82.76%100%99.46%101, 137, 181, 41–42, 60
   informativeTest_6_3_2.js100%100%100%100%
   informativeTest_6_3_4.js100%100%100%100%
csaf_2_1/mandatoryTests
   mandatoryTest_6_1_1.js44.75%77.78%37.50%43.88%100–116, 127–167, 175–186, 194–212, 220–238, 246–268, 71–89, 92–99
   mandatoryTest_6_1_10.js99.64%96.97%100%100%179
   mandatoryTest_6_1_11.js89.72%80%100%90.63%54–56, 64–71
   mandatoryTest_6_1_13.js99.53%96.15%100%100%137
   mandatoryTest_6_1_27_12.js100%100%100%100%
   mandatoryTest_6_1_27_14.js100%100%100%100%
   mandatoryTest_6_1_27_15.js100%100%100%100%
   mandatoryTest_6_1_27_16.js100%100%100%100%
   mandatoryTest_6_1_27_17.js99.15%93.75%100%100%80
   mandatoryTest_6_1_27_19.js92.31%80%100%94.06%79–80, 82–88
   mandatoryTest_6_1_34.js95.92%81.82%100%97.65%55–57, 77
   mandatoryTest_6_1_35.js100%100%100%100%
   mandatoryTest_6_1_36.js97.10%72.22%100%99.10%146–148, 156, 183, 185, 199
   mandatoryTest_6_1_37.js76.39%58.33%66.67%77.52%150, 150–174, 179, 183, 187–191, 194–214
   mandatoryTest_6_1_39.js100%100%100%100%
   mandatoryTest_6_1_40.js100%100%100%100%
   mandatoryTest_6_1_41.js100%100%100%100%
   mandatoryTest_6_1_43.js87.78%88.24%80%87.94%131–132, 142–149, 183–198
   mandatoryTest_6_1_52.js100%100%100%100%
   mandatoryTest_6_1_6.js100%100%100%100%
   mandatoryTest_6_1_7.js100%100%100%100%
   mandatoryTest_6_1_8.js93.10%60%100%98.39%100, 103, 112, 115, 74–76, 81, 88, 91
   mandatoryTest_6_1_9.js100%100%100%100%
   mandatoryTests_6_1_38.js100%100%100%100%
csaf_2_1/recommendedTests
   recommendedTest_6_2_1.js100%100%100%100%
   recommendedTest_6_2_10.js70%100%0%75%7–8
   recommendedTest_6_2_11.js70%100%0%75%7–8
   recommendedTest_6_2_12.js100%100%100%100%
   recommendedTest_6_2_13.js100%100%100%100%
   recommendedTest_6_2_14.js100%100%100%100%
   recommendedTest_6_2_15.js100%100%100%100%
   recommendedTest_6_2_16.js100%100%100%100%
   recommendedTest_6_2_17.js100%100%100%100%
   recommendedTest_6_2_18.js100%100%100%100%
   recommendedTest_6_2_19.js70%100%0%75%7–8
   recommendedTest_6_2_2.js100%100%100%100%
   recommendedTest_6_2_20.js70%100%0%75%7–8
   recommendedTest_6_2_22.js100%100%100%100%
   recommendedTest_6_2_23.js100%100%100%100%
   recommendedTest_6_2_27.js97.24%82.61%100%98.96%124–126, 141, 145, 166
   recommendedTest_6_2_28.js100%100%100%100%
   recommendedTest_6_2_29.js100%100%100%100%
   recommendedTest_6_2_3.js97.67%87.50%100%98.70%63–64
   recommendedTest_6_2_38.js100%100%100%100%
   recommendedTest_6_2_4.js100%100%100%100%
   recommendedTest_6_2_5.js100%100%100%100%
   recommendedTest_6_2_6.js100%100%100%100%
   recommendedTest_6_2_7.js100%100%100%100%
   recommendedTest_6_2_8.js100%100%100%100%
   recommendedTest_6_2_9.js100%100%100%100%
csaf_2_1/schemaTests
   csaf_2_1.js93.10%100%100%92.31%22–23
   csaf_2_1_strict.js93.10%100%100%92.31%22–23
csaf_2_1/schemaTests/csaf_2_1
   schema.js100%100%100%100%
csaf_2_1/schemaTests/csaf_2_1_strict
   schema.js100%100%100%100%
lib
   cwec.js100%100%100%100%
   informativeTests.js100%100%100%100%
   mandatoryTests.js100%100%100%100%
   optionalTests.js100%100%100%100%
   schemaTests.js100%100%100%100%
   strip.js100%100%100%100%
   validate.js100%100%100%100%
lib/cwec
   2.11.js100%100%100%100%
   3.0.js100%100%100%100%
   4.10.js100%100%100%100%
   4.12.js100%100%100%100%
   4.13.js100%100%100%100%
   4.14.js100%100%100%100%
   4.9.js100%100%100%100%
lib/informativeTests
   informativeTest_6_3_1.js100%100%100%100%
   informativeTest_6_3_10.js96.39%90%100%97.18%47–49
   informativeTest_6_3_11.js96.63%91.67%100%97.33%47–49
   informativeTest_6_3_2.js100%100%100%100%
   informativeTest_6_3_3.js100%100%100%100%
   informativeTest_6_3_4.js100%100%100%100%
   informativeTest_6_3_5.js97.96%83.33%100%100%30
   informativeTest_6_3_6.js99.02%95.52%100%99.55%196–198, 222, 402
   informativeTest_6_3_7.js96%87.50%100%97.59%53–55, 61
   informativeTest_6_3_8.js97.66%83.33%100%99.05%239–241, 244, 246, 298–300, 394, 399, 416
   informativeTest_6_3_9.js95.97%89.47%100%96.83%42–44, 54–56
lib/informativeTests/shared
   testURL.js100%100%100%100%
lib/mandatoryTests
   mandatoryTest_6_1_1.js100%100%100%100%
   mandatoryTest_6_1_10.js98.60%92.59%100%100%106, 97
   mandatoryTest_6_1_11.js100%100%100%100%
   mandatoryTest_6_1_12.js100%100%100%100%
   mandatoryTest_6_1_13.js99.28%95.83%100%100%109
   mandatoryTest_6_1_14.js100%100%100%100%
   mandatoryTest_6_1_15.js100%100%100%100%
   mandatoryTest_6_1_16.js100%100%100%100%
   mandatoryTest_6_1_17.js100%100%100%100%
   mandatoryTest_6_1_18.js100%100%100%100%
   mandatoryTest_6_1_19.js100%100%100%100%
   mandatoryTest_6_1_2.js98%87.50%100%100%110, 52, 68
   mandatoryTest_6_1_20.js100%100%100%100%
   mandatoryTest_6_1_21.js100%100%100%100%
   mandatoryTest_6_1_22.js100%100%100%100%
   mandatoryTest_6_1_23.js98.44%92.31%100%100%39
   mandatoryTest_6_1_24.js96.63%83.33%100%100%50, 62, 64
   mandatoryTest_6_1_25.js98.94%93.75%100%100%139, 144
   mandatoryTest_6_1_26.js100%100%100%100%
   mandatoryTest_6_1_27_1.js100%100%100%100%
   mandatoryTest_6_1_27_10.js95.58%80.95%100%98.90%52, 54, 57–59
   mandatoryTest_6_1_27_11.js100%100%100%100%
   mandatoryTest_6_1_27_2.js100%100%100%100%
   mandatoryTest_6_1_27_3.js100%100%100%100%
   mandatoryTest_6_1_27_4.js100%100%100%100%
   mandatoryTest_6_1_27_5.js100%100%100%100%
   mandatoryTest_6_1_27_6.js100%100%100%100%
   mandatoryTest_6_1_27_7.js100%100%100%100%
   mandatoryTest_6_1_27_8.js100%100%100%100%
   mandatoryTest_6_1_27_9.js98.82%94.87%100%100%55, 92
   mandatoryTest_6_1_28.js100%100%100%100%
   mandatoryTest_6_1_29.js100%100%100%100%
   mandatoryTest_6_1_3.js100%100%100%100%
   mandatoryTest_6_1_30.js100%100%100%100%
   mandatoryTest_6_1_31.js100%100%100%100%
   mandatoryTest_6_1_32.js100%100%100%100%
   mandatoryTest_6_1_33.js100%100%100%100%
   mandatoryTest_6_1_4.js100%100%100%100%
   mandatoryTest_6_1_5.js81.36%100%75%79.21%100–101, 81–99
   mandatoryTest_6_1_6.js100%100%100%100%
   mandatoryTest_6_1_7.js97.54%90.63%100%100%62, 77, 81
   mandatoryTest_6_1_8.js94.02%72.22%100%97.96%61–63, 74, 77, 86, 89
   mandatoryTest_6_1_9.js100%100%100%100%
lib/mandatoryTests/shared
   docUtils.js98.60%92.68%100%100%139, 56, 72
lib/optionalTests
   optionalTest_6_2_1.js98.76%91.30%100%99.72%134, 145, 302, 348–349
   optionalTest_6_2_10.js100%100%100%100%
   optionalTest_6_2_11.js100%100%100%100%
   optionalTest_6_2_12.js100%100%100%100%
   optionalTest_6_2_13.js100%100%100%100%
   optionalTest_6_2_14.js100%100%100%100%
   optionalTest_6_2_15.js100%100%100%100%
   optionalTest_6_2_16.js95.95%89.47%100%96.85%114–116, 88–90
   optionalTest_6_2_17.js100%100%100%100%
   optionalTest_6_2_18.js96.84%92.31%100%97.50%48–50
   optionalTest_6_2_19.js96.05%83.72%100%98.05%108, 195, 206, 251–256, 79, 88, 90
   optionalTest_6_2_2.js98.35%92.31%100%99.07%91–92
   optionalTest_6_2_20.js94.59%71.43%100%100%19, 23
   optionalTest_6_2_3.js100%100%100%100%
   optionalTest_6_2_4.js100%100%100%100%
   optionalTest_6_2_5.js100%100%100%100%
   optionalTest_6_2_6.js100%100%100%100%
   optionalTest_6_2_7.js100%100%100%100%
   optionalTest_6_2_8.js100%100%100%100%
   optionalTest_6_2_9.js100%100%100%100%
lib/optionalTests/shared
   checkForUnsafeHashAlgorithms.js98.55%88.89%100%100%31
lib/schemaTests
   csaf_2_0.js96.88%80%100%100%23
   csaf_2_0_strict.js96.88%80%100%100%23
lib/schemaTests/csaf_2_0
   schema.js100%100%100%100%
lib/schemaTests/csaf_2_0_strict
   schema.js100%100%100%100%
lib/shared
   bcpLanguageTagChecker.js100%100%100%100%
   csafAjv.js100%100%100%100%
   csafHelpers.js100%100%100%100%
   cvss2.js98.39%84.62%100%99.41%115, 120–122, 125, 9
   cvss3.js100%100%100%100%
   cvss4.js98.71%88.89%83.33%99.11%1022–1028, 1057–1059, 1087, 1112, 1115
   cwec.js100%100%100%100%
   dateHelper.js95.45%80%100%100%16–17
   first.js100%100%100%100%
   sortObjectKeys.js100%100%100%100%
lib/shared/bcpLanguageTagChecker
   extensions.js100%100%100%100%
   subtags.js100%100%100%100%
lib/shared/csafAjv
   Decision_Point-1-0-1.js100%100%100%100%
   Decision_Point_Value_Selection-1-0-1.js100%100%100%100%
   cvss-v2.0.js100%100%100%100%
   cvss-v3.0.js100%100%100%100%
   cvss-v3.1.js100%100%100%100%
   cvss-v4.0.js100%100%100%100%
   format-assertion.js100%100%100%100%
   meta.js100%100%100%100%
lib/shared/csafHelpers
   walkHashes.js100%100%100%100%

@domachine domachine force-pushed the 379-informative-test-6.3.16 branch from d3d9dd2 to cd12da7 Compare September 4, 2025 06:12
@github-actions
Copy link

github-actions bot commented Sep 4, 2025

Coverage after merging 379-informative-test-6.3.16 into main

99.48%

Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
context.js100%100%100%100%
cwe.js100%100%100%100%
informativeTests.js100%100%100%100%
mandatoryTests.js100%100%100%100%
optionalTests.js100%100%100%100%
schemaTests.js100%100%100%100%
strip.js100%100%100%100%
validate.js100%100%100%100%
validateStrict.js90.91%66.67%100%93.10%27, 27–28
csaf_2_1
   informativeTests.js100%100%100%100%
   mandatoryTests.js100%100%100%100%
   recommendedTests.js100%100%100%100%
   schemaTests.js100%100%100%100%
   sharingGroup.js100%100%100%100%
csaf_2_1/informativeTests
   informativeTest_6_3_1.js100%100%100%100%
   informativeTest_6_3_12.js100%100%100%100%
   informativeTest_6_3_16.js97.39%82.76%100%99.49%107, 149, 194, 47–48, 66
   informativeTest_6_3_2.js100%100%100%100%
   informativeTest_6_3_4.js100%100%100%100%
csaf_2_1/mandatoryTests
   mandatoryTest_6_1_1.js44.75%77.78%37.50%43.88%100–116, 127–167, 175–186, 194–212, 220–238, 246–268, 71–89, 92–99
   mandatoryTest_6_1_10.js99.64%96.97%100%100%179
   mandatoryTest_6_1_11.js89.72%80%100%90.63%54–56, 64–71
   mandatoryTest_6_1_13.js99.53%96.15%100%100%137
   mandatoryTest_6_1_27_12.js100%100%100%100%
   mandatoryTest_6_1_27_14.js100%100%100%100%
   mandatoryTest_6_1_27_15.js100%100%100%100%
   mandatoryTest_6_1_27_16.js100%100%100%100%
   mandatoryTest_6_1_27_17.js99.15%93.75%100%100%80
   mandatoryTest_6_1_27_19.js92.31%80%100%94.06%79–80, 82–88
   mandatoryTest_6_1_34.js95.92%81.82%100%97.65%55–57, 77
   mandatoryTest_6_1_35.js100%100%100%100%
   mandatoryTest_6_1_36.js97.10%72.22%100%99.10%146–148, 156, 183, 185, 199
   mandatoryTest_6_1_37.js76.39%58.33%66.67%77.52%150, 150–174, 179, 183, 187–191, 194–214
   mandatoryTest_6_1_39.js100%100%100%100%
   mandatoryTest_6_1_40.js100%100%100%100%
   mandatoryTest_6_1_41.js100%100%100%100%
   mandatoryTest_6_1_43.js87.78%88.24%80%87.94%131–132, 142–149, 183–198
   mandatoryTest_6_1_52.js100%100%100%100%
   mandatoryTest_6_1_6.js100%100%100%100%
   mandatoryTest_6_1_7.js100%100%100%100%
   mandatoryTest_6_1_8.js93.10%60%100%98.39%100, 103, 112, 115, 74–76, 81, 88, 91
   mandatoryTest_6_1_9.js100%100%100%100%
   mandatoryTests_6_1_38.js100%100%100%100%
csaf_2_1/recommendedTests
   recommendedTest_6_2_1.js100%100%100%100%
   recommendedTest_6_2_10.js70%100%0%75%7–8
   recommendedTest_6_2_11.js70%100%0%75%7–8
   recommendedTest_6_2_12.js100%100%100%100%
   recommendedTest_6_2_13.js100%100%100%100%
   recommendedTest_6_2_14.js100%100%100%100%
   recommendedTest_6_2_15.js100%100%100%100%
   recommendedTest_6_2_16.js100%100%100%100%
   recommendedTest_6_2_17.js100%100%100%100%
   recommendedTest_6_2_18.js100%100%100%100%
   recommendedTest_6_2_19.js70%100%0%75%7–8
   recommendedTest_6_2_2.js100%100%100%100%
   recommendedTest_6_2_20.js70%100%0%75%7–8
   recommendedTest_6_2_22.js100%100%100%100%
   recommendedTest_6_2_23.js100%100%100%100%
   recommendedTest_6_2_27.js97.24%82.61%100%98.96%124–126, 141, 145, 166
   recommendedTest_6_2_28.js100%100%100%100%
   recommendedTest_6_2_29.js100%100%100%100%
   recommendedTest_6_2_3.js97.67%87.50%100%98.70%63–64
   recommendedTest_6_2_38.js100%100%100%100%
   recommendedTest_6_2_4.js100%100%100%100%
   recommendedTest_6_2_5.js100%100%100%100%
   recommendedTest_6_2_6.js100%100%100%100%
   recommendedTest_6_2_7.js100%100%100%100%
   recommendedTest_6_2_8.js100%100%100%100%
   recommendedTest_6_2_9.js100%100%100%100%
csaf_2_1/schemaTests
   csaf_2_1.js93.10%100%100%92.31%22–23
   csaf_2_1_strict.js93.10%100%100%92.31%22–23
csaf_2_1/schemaTests/csaf_2_1
   schema.js100%100%100%100%
csaf_2_1/schemaTests/csaf_2_1_strict
   schema.js100%100%100%100%
lib
   cwec.js100%100%100%100%
   informativeTests.js100%100%100%100%
   mandatoryTests.js100%100%100%100%
   optionalTests.js100%100%100%100%
   schemaTests.js100%100%100%100%
   strip.js100%100%100%100%
   validate.js100%100%100%100%
lib/cwec
   2.11.js100%100%100%100%
   3.0.js100%100%100%100%
   4.10.js100%100%100%100%
   4.12.js100%100%100%100%
   4.13.js100%100%100%100%
   4.14.js100%100%100%100%
   4.9.js100%100%100%100%
lib/informativeTests
   informativeTest_6_3_1.js100%100%100%100%
   informativeTest_6_3_10.js96.39%90%100%97.18%47–49
   informativeTest_6_3_11.js96.63%91.67%100%97.33%47–49
   informativeTest_6_3_2.js100%100%100%100%
   informativeTest_6_3_3.js100%100%100%100%
   informativeTest_6_3_4.js100%100%100%100%
   informativeTest_6_3_5.js97.96%83.33%100%100%30
   informativeTest_6_3_6.js99.02%95.52%100%99.55%196–198, 222, 402
   informativeTest_6_3_7.js96%87.50%100%97.59%53–55, 61
   informativeTest_6_3_8.js97.66%83.33%100%99.05%239–241, 244, 246, 298–300, 394, 399, 416
   informativeTest_6_3_9.js95.97%89.47%100%96.83%42–44, 54–56
lib/informativeTests/shared
   testURL.js100%100%100%100%
lib/mandatoryTests
   mandatoryTest_6_1_1.js100%100%100%100%
   mandatoryTest_6_1_10.js98.60%92.59%100%100%106, 97
   mandatoryTest_6_1_11.js100%100%100%100%
   mandatoryTest_6_1_12.js100%100%100%100%
   mandatoryTest_6_1_13.js99.28%95.83%100%100%109
   mandatoryTest_6_1_14.js100%100%100%100%
   mandatoryTest_6_1_15.js100%100%100%100%
   mandatoryTest_6_1_16.js100%100%100%100%
   mandatoryTest_6_1_17.js100%100%100%100%
   mandatoryTest_6_1_18.js100%100%100%100%
   mandatoryTest_6_1_19.js100%100%100%100%
   mandatoryTest_6_1_2.js98%87.50%100%100%110, 52, 68
   mandatoryTest_6_1_20.js100%100%100%100%
   mandatoryTest_6_1_21.js100%100%100%100%
   mandatoryTest_6_1_22.js100%100%100%100%
   mandatoryTest_6_1_23.js98.44%92.31%100%100%39
   mandatoryTest_6_1_24.js96.63%83.33%100%100%50, 62, 64
   mandatoryTest_6_1_25.js98.94%93.75%100%100%139, 144
   mandatoryTest_6_1_26.js100%100%100%100%
   mandatoryTest_6_1_27_1.js100%100%100%100%
   mandatoryTest_6_1_27_10.js95.58%80.95%100%98.90%52, 54, 57–59
   mandatoryTest_6_1_27_11.js100%100%100%100%
   mandatoryTest_6_1_27_2.js100%100%100%100%
   mandatoryTest_6_1_27_3.js100%100%100%100%
   mandatoryTest_6_1_27_4.js100%100%100%100%
   mandatoryTest_6_1_27_5.js100%100%100%100%
   mandatoryTest_6_1_27_6.js100%100%100%100%
   mandatoryTest_6_1_27_7.js100%100%100%100%
   mandatoryTest_6_1_27_8.js100%100%100%100%
   mandatoryTest_6_1_27_9.js98.82%94.87%100%100%55, 92
   mandatoryTest_6_1_28.js100%100%100%100%
   mandatoryTest_6_1_29.js100%100%100%100%
   mandatoryTest_6_1_3.js100%100%100%100%
   mandatoryTest_6_1_30.js100%100%100%100%
   mandatoryTest_6_1_31.js100%100%100%100%
   mandatoryTest_6_1_32.js100%100%100%100%
   mandatoryTest_6_1_33.js100%100%100%100%
   mandatoryTest_6_1_4.js100%100%100%100%
   mandatoryTest_6_1_5.js81.36%100%75%79.21%100–101, 81–99
   mandatoryTest_6_1_6.js100%100%100%100%
   mandatoryTest_6_1_7.js97.54%90.63%100%100%62, 77, 81
   mandatoryTest_6_1_8.js94.02%72.22%100%97.96%61–63, 74, 77, 86, 89
   mandatoryTest_6_1_9.js100%100%100%100%
lib/mandatoryTests/shared
   docUtils.js98.60%92.68%100%100%139, 56, 72
lib/optionalTests
   optionalTest_6_2_1.js98.76%91.30%100%99.72%134, 145, 302, 348–349
   optionalTest_6_2_10.js100%100%100%100%
   optionalTest_6_2_11.js100%100%100%100%
   optionalTest_6_2_12.js100%100%100%100%
   optionalTest_6_2_13.js100%100%100%100%
   optionalTest_6_2_14.js100%100%100%100%
   optionalTest_6_2_15.js100%100%100%100%
   optionalTest_6_2_16.js95.95%89.47%100%96.85%114–116, 88–90
   optionalTest_6_2_17.js100%100%100%100%
   optionalTest_6_2_18.js96.84%92.31%100%97.50%48–50
   optionalTest_6_2_19.js96.05%83.72%100%98.05%108, 195, 206, 251–256, 79, 88, 90
   optionalTest_6_2_2.js98.35%92.31%100%99.07%91–92
   optionalTest_6_2_20.js94.59%71.43%100%100%19, 23
   optionalTest_6_2_3.js100%100%100%100%
   optionalTest_6_2_4.js100%100%100%100%
   optionalTest_6_2_5.js100%100%100%100%
   optionalTest_6_2_6.js100%100%100%100%
   optionalTest_6_2_7.js100%100%100%100%
   optionalTest_6_2_8.js100%100%100%100%
   optionalTest_6_2_9.js100%100%100%100%
lib/optionalTests/shared
   checkForUnsafeHashAlgorithms.js98.55%88.89%100%100%31
lib/schemaTests
   csaf_2_0.js96.88%80%100%100%23
   csaf_2_0_strict.js96.88%80%100%100%23
lib/schemaTests/csaf_2_0
   schema.js100%100%100%100%
lib/schemaTests/csaf_2_0_strict
   schema.js100%100%100%100%
lib/shared
   bcpLanguageTagChecker.js100%100%100%100%
   csafAjv.js100%100%100%100%
   csafHelpers.js100%100%100%100%
   cvss2.js98.39%84.62%100%99.41%115, 120–122, 125, 9
   cvss3.js100%100%100%100%
   cvss4.js98.71%88.89%83.33%99.11%1022–1028, 1057–1059, 1087, 1112, 1115
   cwec.js100%100%100%100%
   dateHelper.js95.45%80%100%100%16–17
   first.js100%100%100%100%
   sortObjectKeys.js100%100%100%100%
lib/shared/bcpLanguageTagChecker
   extensions.js100%100%100%100%
   subtags.js100%100%100%100%
lib/shared/csafAjv
   Decision_Point-1-0-1.js100%100%100%100%
   Decision_Point_Value_Selection-1-0-1.js100%100%100%100%
   cvss-v2.0.js100%100%100%100%
   cvss-v3.0.js100%100%100%100%
   cvss-v3.1.js100%100%100%100%
   cvss-v4.0.js100%100%100%100%
   format-assertion.js100%100%100%100%
   meta.js100%100%100%100%
lib/shared/csafHelpers
   walkHashes.js100%100%100%100%

Copy link
Contributor

@rainer-exxcellent rainer-exxcellent left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Contributor

@tschmidtb51 tschmidtb51 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please see my comments

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a better way to name that or a better location? In my perception, people think, when they find a docker file in the root of the repo that this is for the repo itself, not a dev dependency...

*
* @type {Context}
*/
export const context = { languageToolUrl: 'http://localhost:8010' }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It feels like this is falling out of the sky. I didn't find TCP 8010 in the official documentation. What did I overlook?

accept: 'application/json',
},
})
if (!res.ok) throw new Error('request to languagetool failed')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add into the error message here on which port / url you tried to connected to languageTool

Comment on lines +45 to +48
const lang =
(doc.document?.lang &&
bcp47.parse(doc.document.lang)?.langtag.language.language) ??
'en'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are we setting en here?

if (!json.some((l) => l.code === lang)) {
ctx.infos.push({
instancePath: '/document/lang',
message: 'language is not supported',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add the language into the error message


const lang =
(doc.document?.lang &&
bcp47.parse(doc.document.lang)?.langtag.language.language) ??
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are we extracting the just the language and not using the whole string?


const json = /** @type {Response} */ (await res.json())

if (!json.some((l) => l.code === lang)) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we check against code instead of long? I could accept that as fallback but we should check the correct / more specific first.

['text', str],
]),
})
if (!res.ok) throw new Error('request to languagetool failed')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here

if (result.length) {
ctx.infos.push({
instancePath,
message: result.map((r) => r.message).join(' '),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should open an issue as a reminder to improve the output and expose all information language tool provides us... (This will be helpful for viewers to display and provide correction suggestions...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is not mention in the Readme that languagetool is required (and at which port).

@tschmidtb51 tschmidtb51 assigned domachine and unassigned tschmidtb51 Oct 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants