-
Notifications
You must be signed in to change notification settings - Fork 4
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
Refactor how the values of properties in integration tests are queried #107
Conversation
afc9a25
to
1c0d080
Compare
1c0d080
to
e2500df
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.
We have to be carefull to not getting too overboard with helper utilities in the specs as it can happen that the specs become unreadable or the maintanance hell when doing bigger shifts.
Also again. You must if you want to use traits be carefull that it won't be added multiple times as it can lead to some very funny linking issues at runtime.
|
||
class IntegrationSpec extends nebula.test.IntegrationSpec | ||
implements PropertyUtils, PlatformUtilsImpl { | ||
implements PropertyUtilsImpl, PlatformUtilsImpl { |
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 PropertyUtilsImpl
is a trait I hope? Because I get slight nervious ticks when seeing an Interface called Impl :)
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.
Yes, it's a trait.
Yes, for the utilities I am keeping in mind that they shouldn't negatively affect the readability of the tests. I went over the design of the API a few times on this newer one. |
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.
I like it.
We should move this stuff as fast as possible into the shared test lib.
Description
Rewrites how the values of properties are queried by the integration tests by using a writer object which handles the writing of the query task and provides the functions for testing them.
The newer API simplifies the writing of these property tests:
Changes