-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Plugin Framework bridge cross tests #2592
Conversation
This change is part of the following stack: Change managed by git-spice. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #2592 +/- ##
==========================================
+ Coverage 62.79% 62.81% +0.01%
==========================================
Files 389 389
Lines 51938 51939 +1
==========================================
+ Hits 32615 32624 +9
+ Misses 17515 17506 -9
- Partials 1808 1809 +1 ☔ View full report in Codecov by Sentry. |
6a336a1
to
a98d243
Compare
481e2e7
to
0843489
Compare
20d3be3
to
93314c6
Compare
I'll follow-up with issues for the TODOs |
f9f8225
to
e325bdb
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a massive PR, with 27 commits. Can you give some advice on how to review?
I'm assuming the Pu stdout is collected for humans to read? Are we supposed to read it as part of review? Does it exist only so we notice if we change it? Has it been verified as correct?
pkg/pf/tests/testdata/TestDetailedDiffList/attribute_no_replace/added.golden
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should address one comment Ian had on List vs Set, otherwise looks valuable and something we can build on.
This reverts commit f285bcd.
ef59d8d
to
6d57a22
Compare
This change adds additional testing for Diff in PF for sets involving Computed. The following schemas are covered: - Set block with a Computed attribute - Set block with a Computed attribute and RequiresReplace on the non-computed attribute - Set block with a Computed attribute and RequiresReplace on the computed attribute - Set block with a Computed attribute and RequiresReplace on the block - Set block with a Computed attribute and no UseStateForUnknown on the Computed attribute For each of these we test both when the Computed attribute is specified in the program and when it is not. For each of these schemas we test the full set of scenarios added in #2592 This should give us some confidence that the changes we are making by adding Detailed Diff for PF are good for Computed properties. I will categorize all the issues here as a follow-up before merging #2629
This PR has been shipped in release v3.96.0. |
This is a refactor of the SDKv2 detailed diff tests for sets. Instead of recording them inline, we now run them as cross-tests and record them in separate files along with the name of the test and the input values. This mimics what we did for the PF detailed diff tests in #2592 I've gone through the recordings and believe all of them are correct.
This is a refactors the rest of the SDKv2 detailed diff tests. Instead of recording them inline, we now run them as cross-tests and record them in separate files along with the name of the test and the input values. This mimics what we did for the PF detailed diff tests in #2592 I've gone through the recordings and believe all of them are correct.
This is a test-only PR - it adds cross-tests for Diff for the plugin framework for the existing behaviour.
Each test defines a set of schemas and a set of scenarios and the full matrix of schemas X scenarios is run in cross-tests. For each of these test cases both pulumi and TF are run with the initial input then a preview is run with the second set of inputs and the outcome of the preview is compared.
We also record the stdout for both pulumi and TF for manual comparison of the preview output. The recordings also contain the inputs in order to make spot-checking them easier.
The full test plan is available in #2597
fixes #2297
fixes #2597