-
Notifications
You must be signed in to change notification settings - Fork 31
Fix Evaluate tests for emscripten build #544
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
base: main
Are you sure you want to change the base?
Fix Evaluate tests for emscripten build #544
Conversation
clang-tidy review says "All clean, LGTM! 👍" |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #544 +/- ##
=======================================
Coverage 75.93% 75.93%
=======================================
Files 9 9
Lines 3644 3644
=======================================
Hits 2767 2767
Misses 877 877 🚀 New features to boost your workflow:
|
clang-tidy review says "All clean, LGTM! 👍" |
Strange, I won't expect the following to fail. Looks simple enough but it fails here
Tried it locally too Not sure why we get 2 in the first place ! |
clang-tidy review says "All clean, LGTM! 👍" |
0210023
to
e6bf84a
Compare
clang-tidy review says "All clean, LGTM! 👍" |
Okay this might be the weirdest thing I've come across in a while but I would like to bring your attention towards something (cc @vgvassilev @mcbarton ) If you go through the above comment of mine (#544 (comment)) you would realize that it is strange for something like this to fail. Its a simple Evaluate check which we have been doing since quite some time now and I also pasted an image of executing the same thing in xeus-cpp-lite. Let me explain through a more clearer example on what is happening (cause the error here isn't justifying much) Conside these 2 tests in FunctionReflectionTest
Now our emscripten build is good enough to address both these tests. But there is something going wrong with
So technically both these tests have the capacity to function perfectly on their own (and whichever would be placed first would work for now) |
So basically what I realize is that its one of the As a workaround (cause I am bullish on something like Evaluate to be test, I mean it is one of the basic things we should expect to work) I am just changing this for now
This ensures no flaky side module from the above affects stuff in InterpreterTest.cpp ( which technically is 3rd in place currently) I know this might not be the "best" fix or so but i wouldn't have the time to look into what goes wrong in the emscripten build for gtest in the coming week or two. On the same note I think its really important to test something like So yeah changing the order changes nothing . Just gives us 1 more working test. Hope that's fine :) |
clang-tidy review says "All clean, LGTM! 👍" |
0615cd3
to
37fa886
Compare
clang-tidy review says "All clean, LGTM! 👍" |
InterpreterTest.cpp | ||
FunctionReflectionTest.cpp | ||
EnumReflectionTest.cpp |
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 need to order this alphabetically.
That means that something is wrong with static initialization of the binary and it is better to get to the bottom of it. |
Hmm, I am not sure that's the case. Check this #544 (comment) |
I did. |
So basically we sure can run these tests. Looking as to how we can get round this ! |
@anutosh491 Since this PR went in, we updated the version of GoogleTests we are using here #552 . Have you checked that this bug hasn't been fixed in the latest version? |
Hi, As I wrote above I would fall short on time to investigate anything related to the emscripten build for gtest :( As you introduced these set of tests would you like to take charge of fixing it ? I think the "Evaluate" function is something that should absolutely be tested and not be skipped! (But yeah as Vassil pointed out my workaround might just be a cheap trick to get this done) |
We can move forward with the current approach only if we add a fixme in cmake and open a bug report explaining what we know and what needs to be investigated. |
Description
I realized technically this should work. The only reason it might not is if we fail to fetch the
-std=c++14
arg which we should !Creating the interpreter correctly should fix that I suppose
CppInterOp/lib/Interpreter/CppInterOp.cpp
Lines 2917 to 2923 in e1ace51
Type of change
Please tick all options which are relevant.
Testing
Please describe the test(s) that you added and ran to verify your changes.
Checklist