-
Notifications
You must be signed in to change notification settings - Fork 2
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
Replace pragma structure #37
base: plcte-2020
Are you sure you want to change the base?
Conversation
Live specimen test failing due to me not knowing how to initialize these :D |
After looking through some of the things happening in this PR I started wondering what it is supposed to do? It kind of replaces most of the central example infrastructure? |
@codeZeilen Oh, I thought we were on the same page so I skipped the description, sorry for the misunderstanding. This MR replaces the serialization of examples in pragmas through referencing their test methods instead. so in order for all the existing examples to still be styled as morphs, we generated tests and replaced the pragmas with the new ones. |
Now that I had time to consider this. To improve the mergability of this with regard to develop, we might want to approach this differently. Instead of replacing everything, this could be implemented by subclassing BPExample and BPScriptExample and adding corresponding buttons to the UI. Currently, merging this change back into develop would change the complete infrastructure which would prevent me from merging for at least a couple of months during which I need it to remain stable. If this is too much effort, we should briefly chat on Monday. :) |
This MR replaces the serialization of examples in pragmas through referencing their test methods instead. so in order for all the existing examples to still be styled as morphs, we generated tests and replaced the pragmas with the new ones.
Aka pragmas go from looking like this
<exampleName: active: self: expectedValue: with: ....> to <testRef: active:> as the data is in the tests.
As the setUpScript and tearDownScript are not yet serialized, they still are part of the pragma.
Additionally, it changes the annotation extraction so that the new pragma structure is also getting displayed as morphs in the BPBabylonianBrowser. For that old example pragmas were serialized to tests and then changed to the new testRef structure