Using Cucumber With Modular Sinatra Apps

Posted by Rob Conery on Stack Overflow See other posts from Stack Overflow or by Rob Conery
Published on 2010-03-19T21:10:00Z Indexed on 2010/03/19 21:11 UTC
Read the original article Hit count: 270

Filed under:
|
|

I'm building out a medium-sized application using Sinatra and all was well when I had a single app.rb file and I followed Aslak's guidance up on Github:

http://wiki.github.com/aslakhellesoy/cucumber/sinatra

As the app grew a bit larger and the app.rb file started to bulge, I refactored out a lot of of the bits into "middleware" style modules using Sinatra::Base, mapping things using a rack-up file (config.ru) etc.

The app works nicely - but my specs blew up as there was no more app.rb file for webrat to run against (as defined in the link above).

I've tried to find examples on how to work this - and I think I'm just not used to the internal guts of Cuke just yet as I can't find a single way to have it cover all the apps. I tried just pointing to "config.ru" instead of app.rb - but that doesn't work.

What I ended up doing - which is completely hackish - is to have a separate app.rb file in my support directory, which has all the requires stuff so I can at least test the model stuff. I can also specify routes in there - but that's not at all what I want to do.

So - the question is: how can I get Cucumber to properly work with the modular app approach?

© Stack Overflow or respective owner

Related posts about sinatra

Related posts about cucumber