Thanks for the response.
Incidentally I did have more to add in my first post but being new to Google group pressed tab and enter accidentally and suddenly it was gone...
It is as you say, its to do with a conflicting ::User. The trouble is I have a Cinch::User in my code that when I run my application, re-opens the User class and adds some methods. But when I run 'rspec', the Cinch::User class is not re-opened, somehow it overwrites all of Cinch::User (thus the problem with initialize).
I googled around a bit and apparently it is because rspec automatically adds the local lib folder to $LOAD_PATH. So running 'ruby -Ispec -rrspec/autorun path/to/spec.rb' (i.e. omitting the -Ilib flag) encounters no problems.
Is there a way I can either not automatically add lib to $LOAD_PATH when running rspec?
or is running 'rspec' not important and should I just always run the ruby command?
or is there a different way I could re-open Cinch::User without it being overwritten when 'rspec'-ing?
or any other solution?
I could also move my code out of lib but although I am new it is my impression that that is where the code should be.
Cheers,
Jonas