Oh and yes, I'm using jeweler. :)

Ramon Tayag

On Tue, Mar 30, 2010 at 7:09 PM, aslak hellesoy <[email protected]>wrote:

>
>
> On Tue, Mar 30, 2010 at 12:17 PM, Ramon Tayag <[email protected]>wrote:
>
>> Hey everyone!
>>
>> A few days ago, I tried my hand at creating a gem. I've been putting it
>> off for a long time because of the lack of documentation (or the lack of my
>> Googling skills). When I search how to create gems with RSpec, I get pages
>> that talk about gem templates with the rspec option, as if that would solve
>> it all.
>>
>>
> Have you tried jeweler? Try this:
>
> gem install jeweler
> jeweler --help
> jeweler --rspec --summary "My awesome gem, which solves problems"
> --description "The awesome gem" awesome
> cd awesome
> rake -T
> rake spec # write a real spec
> rake version:write
> rake install
>
> See the Jeweler docs for more:
> http://wiki.github.com/technicalpickles/jeweler/
>
> If there are no tutorials, maybe I could ask for your help in setting it up
>> for a gem:
>>
>> Backgrounder
>> I'm asking because it's a bit frustrating doing things by trial and error.
>> A lot of the problems I've come across were that the files that rspec-rails
>> loads for me aren't automatically available in the gem, so I have to
>> manually include it. It became a problem when I had to test an ActiveRecord
>> model, and worse when I had to test a controller. Currently, I'm stuck at
>> the point where "get", "put", "post", "delete" aren't available in the spec.
>> I asked about it in StackOverflow and got the 
>> answer<http://stackoverflow.com/questions/2543885/why-dont-rspecs-methods-get-post-put-delete-work-in-a-controller-sp>,
>> but it doesn't explain what I have to do to basically replicate those
>> methods.
>>
>> What did I do?
>> As part of my trial and error process, I started including what
>> rspec-rails includes
>> http://github.com/dchelimsky/rspec-rails/blob/master/lib/spec/rails.rb,
>> and the REST actions don't seem to trigger an undefined error anymore, but
>> now there's another "uninitialized constant Rails". So.. before I go
>> further, maybe I'm approaching this wrong since I'm having such a difficult
>> time.
>>
>> What's the best way to go about this? Is there a way to maybe include
>> Rails and everything it has, for testing purposes? I know that you're
>> supposed to make gems framework agnostic but for brevity's sake (and for my
>> own sanity) I'm willing to make it very plugin-like for now. I've been
>> reading and researching for 3 days you see :)
>>
>>
> I'm not sure what your gem does, but if it has dependencies on Rails, the
> easiest way to develop it (in my experience) is to have a separate Rails app
> that _uses_ your gem, and that is not part of the gem's source code. Then
> that Rails app could have specs (and maybe Cucumber features) that rely on
> the correct implementation of your gem.
>
> Maybe you could say a little more about what your gem does?
>
> Aslak
>
>
>>  Thanks, and I apologize for the novel!
>> Ramon Tayag
>>
>> _______________________________________________
>> rspec-users mailing list
>> [email protected]
>> http://rubyforge.org/mailman/listinfo/rspec-users
>>
>
>
> _______________________________________________
> rspec-users mailing list
> [email protected]
> http://rubyforge.org/mailman/listinfo/rspec-users
>
_______________________________________________
rspec-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to