4 ms·
You can easily pass an object into Javascript: context.put(“rubyObject”, MyRubyClass.new) Whether you would be able to call methods on it depends on whether t
by ilyak 17y ago
You can easily pass an object into Javascript:
context.put(“rubyObject”, MyRubyClass.new)
Whether you would be able to call methods on it depends on whether the Snarl author did some (trivial) code magic or not, but it's certainly doable too.
Still I have no idea why would you want javascript in ruby in the first place.
- rcoder 17y agoOnce you have a Javascript environment, it's not a large jump to emulate a minimal DOM -- see env.js, for example: http://ejohn.org/blog/bringing-the-browser-to-the-server/ http://ejohn.org/blog/bringing-the-browser-to-the-server/ With a stub DOM and Javascript interpreter, you can pass generated output from web application views directly into your testing environment and make assertions about the resulting behavior, dynamically-generated DOM nodes, etc. There are a number of projects similar to this one (for which, sadly, I cannot currently pull up any bookmarks) mostly intended for a similar set of tasks. Being able to bring RSpec or Cucumber to bear on a hairy JS testing job can make the process much more enjoyable.
- bensummers 17y agoI looked at the code. I don't think that'd work. As for using Javascript from Ruby, it might be quite nice as a language to let your users write extensions and plugins. It's a language where the implementations all have an emphasis on sandboxing.
- ilyak 17y agoWhy not? I mean, rhino has methodNotFound-like thing, so you certainly can.
- bensummers 17y agoI meant I looked at the Snarl code, and it wasn't implemented there. But you are right, it is technically possible.