On Wed, Feb 25, 2009 at 10:45 PM, David Chelimsky <dchelim...@gmail.com>wrote:
> On Wed, Feb 25, 2009 at 3:51 AM, Suprie Leonhart > <suprie.leonhe...@gmail.com> wrote: > > > > > > On Wed, Feb 25, 2009 at 4:19 PM, David Chelimsky <dchelim...@gmail.com> > > wrote: > >> > >> On Wed, Feb 25, 2009 at 1:57 AM, Suprie Leonhart > >> <suprie.leonhe...@gmail.com> wrote: > >> > hi > >> > > >> > i'm testing some lib i've made for detecting mobile user agent, I > >> > confused > >> > how to test the lib i've made. > >> > the test code is > >> > > >> > [code] > >> > > >> > describe "Check if mobile browser" do > >> > it "should know if it's from blackberry" do > >> > blackberry_ua = "BlackBerry8330/4.3.0 Profile/MIDP-2.0 > >> > Configuration/CLDC-1.1 VendorID/105" > >> > request.env["HTTP_USER_AGENT"] = blackberry_ua > >> > is_mobile?.should == true > >> > end > >> > end > >> > > >> > [/code] > >> > > >> > the error is, request variable always nil > >> > > >> > the question : how i mock the request.env ? > >> > >> Since you're trying to test existing code, can you please post that > code? > > > > [code] > > module Mobile > > def load_mobile_agent_file > > ma = File.read(RAILS_ROOT+"/config/mobile.yml") > > yaml = YAML.load(ma) > > return yaml > > end > > Off topic, but this could be a one liner with no temporary variables, > and load_file will take care of opening and reading the file for you: > > def load_mobile_agent_file > YAML.load_file(RAILS_ROOT+"/config/mobile.yml") > end > > > > > def mobile_user_agent? > > if request.env["HTTP_USER_AGENT"] > > user_agent = request.env["HTTP_USER_AGENT"] > > mua = load_mobile_agent_file > > mua["mobile_agent"].each do |key, value| > > unless(user_agent.match(Regexp.new(Regexp.escape(key))).nil?) > > return true > > end > > end > > return false > > end > > end > > end > > [/code] > > Thanks - so I'm wondering where is_mobile? came from. Also, are you > trying to do this in a controller spec or a helper spec? Where is the > spec file located? > > i've refactoring the is_mobile? to mobile_content? i'm trying to spec a lib, so i put it on spec/lib -- -- Best Regards Suprie http://suprie.in.ruangkopi.com "Mendapat upah karena menyenangkan orang lain yang tidak punya persangkutan dengan kata hati sendiri, kan itu dalam seni namanya pelacuran?"
_______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users