it was just a fill_in syntax fail
fill_in("Username", :with => "admin")
fill_in("Password", :with => "radiant")
thanks for the help guys,
Enrico
2009/3/12 Enrico Teotti <[email protected]>:
> Nice post Erik. I am wondering how did you get around the admin login?
> I'm using this:
> u = User.create! :name => 'Administrator', :login => 'admin',
> :password => 'radiant', :password_confirmation => 'radiant'
> visit("/admin/login")
> fill_in("Username", "admin")
> fill_in("Password", "radiant")
> click_button "Login"
>
> but the outcome is always "Invalid username or password.".
>
> Cheers,
> Enrico
>
>
> 2009/2/14 Erik Ostrom <[email protected]>:
>> I'm doing what it says in the subject line, and I thought I'd post some
>> notes and links. For those who don't know, Cucumber (http://cukes.info/) is
>> a BDD tool, successor to RSpec's story runner, that lets you describe
>> desired behavior ("features") in something that looks like human language,
>> and then write the code that defines the behavior ("steps") in Ruby. Webrat
>> (http://github.com/brynary/webrat/tree/master) is an acceptance testing tool
>> that lets you write steps that emulate browser interaction - clicking links,
>> filling in forms - without the overhead of actually firing up a browser.
>> You all know what Radiant is.
>>
>> (I'm working with Radiant 0.6.9, unfortunately, because I want my extension
>> to support an existing site. But I suspect the basic steps will apply to
>> 0.7.)
>>
>>
>>
>> The basic setup went pretty quickly. The instructions for using Cucumber
>> with Rails (http://wiki.github.com/aslakhellesoy/cucumber/ruby-on-rails) go,
>> roughly:
>>
>> - install a bunch of gems
>> - create a Rails project (I already had a Radiant project)
>> - run the cucumber generator
>>
>> In my case, script/generate didn't know about Cucumber, I guess because
>> Radiant looks for generators in other places. So I created a new Rails
>> project, ran the generator there, and copied the files that looked useful
>> into my Radiant extension. I'm reconstructing this from the git commit - it
>> looks like the files were:
>>
>> - features/step_definitions/webrat_steps.rb
>> - features/support/paths.rb
>> - features/support/env.rb
>>
>> I modified env.rb in two ways:
>>
>> - The path to config/environment is three steps higher (../../../).
>> - Load fixtures from spec/ (see
>> http://wiki.github.com/aslakhellesoy/cucumber/fixtures).
>>
>> That was pretty much it - I'm now able to start writing features and steps.
>>
>>
>>
>> There was one major hitch. I wrote a step definition that goes like this:
>>
>> When /^I visit the "(.+)" admin page$/ do |page|
>> visit page_edit_path(Page.find_by_title(page))
>> end
>>
>> ... and a feature that goes like this, in part:
>>
>> When I visit the "Anno Domini" admin page
>> And I fill in "Address" with "366 So. First Street, San Jose, CA 95113"
>> And I press "Save and Continue Editing"
>>
>> You can guess what that does. On the last step, when the form was
>> submitted, I got the error "Couldn't find Page without an ID". The edit
>> form, in the test environment only, was being created with
>> action="/admin/page/edit" (note the missing page ID) instead of
>> "/admin/pages/edit/3".
>>
>> Turns out that in the test environment, Radiant adds its own test fixtures
>> to the extension paths. If you're configured to load all extensions, that
>> will include BasicExtension, which sets up a default route that gets in the
>> way of page_edit_path, and probably a lot of other paths.
>>
>> For anyone else traveling this path, the way I got around this was to ensure
>> my extension was the only one loaded, by putting this line in
>> config/environment.rb in my project:
>>
>> config.extensions = [ :locations ] if config.environment == 'test'
>>
>> There may be a better way, but this is probably good enough. Looking
>> forward, I see that in 0.7, the route that caused the trouble is commented
>> out.
>>
>>
>>
>> Hope this is useful. When the extension is a little more functional, I plan
>> to put it up on Github, so there'll be some sample code. Meantime, Aslak
>> Hellesoy's Ba extension (http://github.com/aslakhellesoy/ba/tree/master) is
>> I think a little behind current practices, but it's where I got most of my
>> ideas.
>>
>> --Erik Ostrom
>> [email protected]
>> _______________________________________________
>> Radiant mailing list
>> Post: [email protected]
>> Search: http://radiantcms.org/mailing-list/search/
>> Site: http://lists.radiantcms.org/mailman/listinfo/radiant
>>
>
>
>
> --
> Enrico Teotti
> IT consultant, accessible web sites and web applications
> Sydney, NSW, Australia
> [email protected]
> mobile (IT) +393286590765
> mobile (AU) +00610416748450
>
> http://www.teotti.com
>
--
Enrico Teotti
IT consultant, accessible web sites and web applications
Sydney, NSW, Australia
[email protected]
mobile (IT) +393286590765
mobile (AU) +00610416748450
http://www.teotti.com
_______________________________________________
Radiant mailing list
Post: [email protected]
Search: http://radiantcms.org/mailing-list/search/
Site: http://lists.radiantcms.org/mailman/listinfo/radiant