-
Notifications
You must be signed in to change notification settings - Fork 86
Adding support for dynamic API libraries #1
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
Conversation
… Rename test library to more descriptive name. Library name now in name of top-level suite.
… the StaticApiLibrary.
Added tag argsknown to exclude tests when RF doesn't know the args. stop_remote_server doc'd. Utility module renamed to pass regexp.
After some consideration, I think that not exposing methods when the dynamic user library does not implement is not the best way to code this. Even though RF & RIDE handle it fine, it means exceptions are raised unnecessarily. Should change to returning ['*args'] or '' for the optional methods if the user library doesn't have get_keyword_arguments or get_keyword_documentation respectively. What do you think? |
Unfortunately this pull request cannot be cleanly merged anymore after changes done for 1.0 release. I also have pretty big refactoring plans for the code in general, and the approach here isn't compatible with them. Adding support for dynamic libs is definitely a valid enhancement and I opened separate issue #18 to cover it. Sorry @ombre42 for neglecting this pull requests. |
It is OK @pekkaklarck . You already apologized. I implemented this because I was using the Python server in Jython to serve a Java dyanic API library(AnnotationLibrary). Dynamic API libraries in Python are less common due to multiple-inheritance. It was good experience for me. |
Dynamic libs in Python are pretty rare and that's why this feature wasn't implemented initially. Serving Java libraries is a very good use case, though, and for some reason I had never thought about that earlier. Great that there is jrobotremoteserver these days to handle it nowadays! |
I am new to Python so excuse me if my code is not very Pythonic.
Some tests are excluded for dynamic libraries not implementing get_keyword_arguments because the error message comes from Python and will not be the same as when RF "knows" the arguments and issues the error.
BTW the three tests stating "Fails with ExpatError when server runs on Jython 2.5" also fail for me on Python 2.7.2 as well (Win7).