Skip to content

[Feature]: Code Cleanup #110

Description

@Malcolmnixon

Problem Statement

CodeQL and Sonar are reporting numerous issues that should be addressed.

Proposed Solution

The following CodeQL issues are with generated code which should be excluded using the exclusion pattern from https://github.com/demaconsulting/VHDLTest/blob/main/.github/codeql-config.yml:

src/DemaConsulting.SpdxModel/obj/Release/net10.0/generated/System.Text.RegularExpressions.Generator/System.Text.RegularExpressions.Generator.RegexGenerator/RegexGenerator.g.cs(92): warning [cs/nested-if-statements] These 'if' statements can be combined.  
src/DemaConsulting.SpdxModel/obj/Release/net8.0/generated/System.Text.RegularExpressions.Generator/System.Text.RegularExpressions.Generator.RegexGenerator/RegexGenerator.g.cs(94): warning [cs/nested-if-statements] These 'if' statements can be combined.  
src/DemaConsulting.SpdxModel/obj/Release/net9.0/generated/System.Text.RegularExpressions.Generator/System.Text.RegularExpressions.Generator.RegexGenerator/RegexGenerator.g.cs(94): warning [cs/nested-if-statements] These 'if' statements can be combined.  

Then the following Sonar issues should be resolved:

test/DemaConsulting.SpdxModel.Tests/SpdxAnnotationTests.cs(176): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxAnnotationTests.cs(200): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxAnnotationTests.cs(224): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxAnnotationTests.cs(248): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxChecksumTests.cs(154): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxChecksumTests.cs(176): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxCreationInformationTests.cs(109): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxCreationInformationTests.cs(132): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxCreationInformationTests.cs(155): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxCreationInformationTests.cs(179): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxExternalDocumentReferenceTests.cs(192): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxExternalDocumentReferenceTests.cs(214): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxExternalReferenceTests.cs(170): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxExternalReferenceTests.cs(194): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxExternalReferenceTests.cs(218): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxExtractedLicensingInfoTests.cs(160): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxExtractedLicensingInfoTests.cs(182): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxFileTests.cs(241): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxPackageVerificationCodeTests.cs(137): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxRelationshipTests.cs(214): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxRelationshipTests.cs(237): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxRelationshipTests.cs(260): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
test/DemaConsulting.SpdxModel.Tests/SpdxSnippetTests.cs(176): INFO CODE_SMELL [external_roslyn:MSTEST0037] Use 'Assert.Contains' instead of 'Assert.IsTrue'  
src/DemaConsulting.SpdxModel/SpdxPackage.cs(390): CRITICAL CODE_SMELL [csharpsquid:S3776] Refactor this method to reduce its Cognitive Complexity from 18 to the 15 allowed.  

Alternatives Considered

No response

Usage Examples

Benefits

Improved code quality and maintainability.

Priority

Low - Nice to have

Willingness to Contribute

Yes, I can submit a pull request

Additional Context

No response

Checklist

  • I have searched existing issues to ensure this is not a duplicate
  • I have provided a clear description of the feature
  • I have explained why this feature would be useful

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

enhancementNew feature or request

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions