dotnet-docker icon indicating copy to clipboard operation
dotnet-docker copied to clipboard

Use manifest.json to determine which tests to run.

Open lbussell opened this issue 10 months ago • 1 comments

Describe the Problem

Maintaining TestData.cs causes merge conflicts during servicing and allows for human error. Most of this data is already duplicated in some way by the manifest.json file. We should consider using that file to drive our tests.

Describe the Solution

There is already a model for the manifest in the ImageBuilder tool. We could either duplicate that model, create a simpler model in this repo just for reading the manifest, or factor out the model from ImageBuilder and publish it as a package.

Including a model to read the manifest file in this repo would also help with https://github.com/dotnet/dotnet-docker/issues/4704.

Additional Context

  • Should still allow for disabling specific image tests for certain cases.

lbussell avatar Apr 05 '24 22:04 lbussell

[Triage]

  1. We discussed generating the TestData in the Test project, but decided against it since it might be easy to miss special cases that exist in the manifest if the test cases aren't explicitly enumerated.

It would be a good idea to create a prototype of this, probably by creating a simple model in the Test project.

lbussell avatar Apr 11 '24 18:04 lbussell