Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(jsii-diff): detect interfaces inherited via interfaces (#1492)
* fix(jsii-diff): detect interfaces inherited via interfaces `jsii-diff` is currently throwing on CDK because it thinks interfaces are being removed from the inheritance chain, even if they've actually been moved to base classes. This is because the `ClassType.getInterfaces()` method of `jsii-reflect` was only returning its direct interfaces, even when run with `inherited=true` (as opposed to recursively returning the interfaces all the way up the tree). Q: Why did you not add a unit test in `jsii-reflect`? A: The set suite of `jsii-reflect` is quite anemic, and basically only tests that we can mostly deduce the types that are present in an assembly. It doesn't have good testing infrastructure for actually asserting things about arbitrary small pieces of typescript, instead it mostly works on the generated assemblies from the `jsii-calc` etc. examples. `jsii-diff` *does* have that testing infrastructure, and so `jsii-diff` serves as the test suite for `jsii-reflect` at the moment... * Satisfy eslint Co-authored-by: Mitchell Valine <valinm@amazon.com>
- Loading branch information