radius-project / bicep-types-aws

Bicep type support for AWS
Apache License 2.0
7 stars 7 forks source link

Provide better testing coverage for serialization of AWS resource type schemas #10

Open willdavsmith opened 1 year ago

willdavsmith commented 1 year ago

Summary

We have identified multiple gaps in the AWS Bicep type generator which cause the output Bicep representation to be incomplete or broken. The number of resources affected so far by this class of issues is indeterminate, and these types of issues can cause the affected resources to be broken (cause the Bicep VSCode extension to crash).

Examples

https://github.com/project-radius/radius/issues/4971 https://github.com/project-radius/radius/issues/4973

Solution

We should do some investigation to determine what key types (e.g. oneOf) can exist in the AWS resource type schemas that are causing the generator to not serialize the Bicep types properly. We should also write regression tests for each of these that we find.

Definition of Done

This is up for debate. We could have tests for all of the major resources, and additional regression tests for any issues found during the investigation.

asilverman commented 1 year ago

I think that the definition of done is to come up with a test plan and create tasks to implement automated tests similar to the jest tests that were created in the resolution of https://github.com/project-radius/bicep-types-aws/pull/9.

Coming up with a test plan requires researching the subject matter and coming up with the requirements for the generator.