-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Provide (and document) an easy way to run tests on Apple Silicon #1199
Comments
Funnily the first way we got here is the development workflow for the JavaScript bindings, which run generated tests 🙂. I’ve been doing a little bit of cleanup in preparation of changes to the CMake build. But the goal is:
|
This sounds great. CMake still seems like arcane magic to me (so any documentation/comments in the config files explaining things would be very welcome), but I understand that it's the closest thing to a standard build system for C/C++.
I'd request to have the option to only run tests for one language (in particular the ability to only run the C tests). This will be important for quick iteration times when changing core algorithm code. |
The binding tests will be run either as PR validation, or if run explicitly. E.g. running |
It's not 100% done yet but #1206 should implement all of this. Need to update more documentation, some MSVC bits, and split it up a bit before merging. |
Seems to be working for me. I can run unit tests. I also managed to add a gentest and get the unit tests to fail. Although there were rough edges with this. I added a style value that isn't currently supported by yoga (
This was fixed by adding support for the style in the (javascript) gentest script after which I was able to get the test to generate correctly and then fail as expected. |
Yeah... the gentest script doesn't have great logging for when there is an exception in the browser. I've been wanting to take a sledgehammer to a lot of the script at some point. There are already too many different languages and toolchains in the repo, and the script is individually adding Ruby into the mix. So my ideal would be to convert to Node and also implement the changes for fixture expected failures and better managing Chrome behavior changes. Speaking of, there are two fixtures broken by Chrome that I haven't merged a fix for yet. #1194 commented them out in the meantime (I'd just do the same if you haven't already), but I will need to rebase it. FYI there should also be a VS Code debug target there for the unit tests, if you want to debug. |
Using Node is a good idea. Then we could use puppeteer and eliminate the chromedriver dependency too.
Yeah, seems like it might good to have a way to define a test to take it's source of truth from a file rather than chrome on a case-by-case basis. But also, it would nice if Yoga had better feature flagging so that it could actually keep up with Chrome changes. "web compatible" vs. "yoga stable" modes or something (more fine grained control would be great, but I think just those two would make a good start). |
Fixed by #1217 |
Request
Provide, and clearly document an easy way to run yoga's test suite on Apple Silicon macs.
Context
Alternatives
The text was updated successfully, but these errors were encountered: