I would like to be able to have a different set of Defaults for my Run and Debug configurations. Is there a way to do this?
I usually setup my Run configuration to launch testdrb (spork client), so that my tests run through spork, and thus run quickly - our rails stack takes almost 30secs to load, which kills productivity when trying to run individual test cases.
For spork, I set the Defaults for Test::Unit/Shoulda to have the following as the Ruby arguments: "-I. -Itest -S testdrb", so that when I "Run context configuration" it sets up a new configuration and runs my test through spork with no hassle (Assuming the spork server is running :) ). RubyMine doesn't have Spork support for TestUnit, so not sure if this would be necessary if it did.
However, once in a while I would also like to debug a test, but since the Run and Debug actions share the same configuration, and this default configuration calls testdrb, when I try to debug it also tries to go through testdrb and fails.
If I could setup the Default for Test::Unit/Shoulda Debug to be different from the Default for Test::Unit/Shoulda Run, then I wouldn't have this problem. Is there a way to do this? If not, is there some other way to accomplish the same thing?
While the above would keep me happy for now, in an ideal world I'd love to be able to debug through spork to make debugging as fast as running, but I don't think this is easy due to the forking action going on. One would have to make rubymine run testdrb and then connect to the forked process instead of testdrb. Maybe the "script" that is passed to spork through testdrb could cause rdebug to get loaded in the fork and connect back to the rubymine debugger port...?
Also, it would be great if I could get the same level of integration with spork that direct test execution has - e.g. being able to see the status while tests are running, be able to run individual tests, red/green status, etc. Right now all I see is "No tests were found" in the left panel, even though they ran just fine in the right panel (understandable given the nature of fork, some kind of result parser needed?)
Any help appreciated, thanks,