Skip to content

No way to continue without a test suite #270

@NikolajSchlej

Description

@NikolajSchlej

Long ago, when trees were big and bits were played live, I've developed those parsers in Qt-flavored C++, using lots and lots of different EFI and UEFI images as possible input, and adding a lot of really strange code to make most of them parsing into something resembling a valid tree structure.

Sadly, today in 2022 almost none of those original images are available to re-test that old code, so refactoring it got unnecessary complex, enough to discourage any new people to ever touch anything here. I myself was discouraged enough for many years.

To make this pain a lot easier, we seriously need to:

  • write a simple test program that can be executed before and after any code change to confirm that the change did not break anything that already has a test for
  • write a ton of tests for this program
  • (re)collect some wacky EFI/UEFI images to test the corner cases and document those corner cases in the code (i.e. // This is to parse test image X, Y and Z)
  • once all of the above is done, add testing in CI/CD pipeline so robots can do it for us
  • then require tests to be written for any new PRs to be merged

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions