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
[core] Use custom $ExpectType assertion #21309
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Details of bundle changes.Comparing: 76a6aa8...57fbf43 Details of page changes
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
With #21308 we no longer have a dependency on
dtslint#expect
moving us closers to #19413.The
typeof value(value)
repetition and error message if it fails is not ideal but documentation forexpectType
hopefully helps. The upside is that we now compare types structurally and not by name (and even worse by order).Didn't use
tsd#expectType
since they bundle their own TypeScript. Minor versions of TypeScript might be incompatible which can become a problem. They also use the compiler API of TypeScript which is largely undocumented. It's unclear whether their approach is intended or if the actual TypeScript language server has the correct/better approach.