-
-
Notifications
You must be signed in to change notification settings - Fork 364
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
Add some BSP integration tests #3608
Add some BSP integration tests #3608
Conversation
6892849
to
1d70b17
Compare
51659a8
to
4fae5d5
Compare
0f28cf2
to
59d99a8
Compare
Not sure the CI error is related to my changes |
It's the flakiness that should be fixed by #3642 |
9abd3b7
to
8c959eb
Compare
Don't fear the apparent large diff, it's a lot of test fixtures. And most commits are kind of small. |
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.
Great to have some test capabilities. I left some comments below.
os.Path(value) | ||
} | ||
|
||
def replaceAllValues( |
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 name is kind of generic and hard to figure out. How about normalizePathsForTesting
?
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.
It's not only paths, it's paths and Java version. I renamed it to normalizeLocalValuesForTesting
in the latest push.
(If the CI is green, feel free to review, and possibly un-draft and merge) |
This adds some BSP integration tests, ensuring the Mill BSP server answers correctly basic BSP requests. BSP responses are serialized on disk and committed, and we compare the requests we get to those on disk. These fixtures on disk can be automatically generated and updated by changing a variable (currently,
BspServerUtil.updateFixtures
), so that it's quite convenient to generate them, and update them and get a nice diff of the changes at the same time.