Forum: RSpec rspec-rails img src and timestamps

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
amkirwan (Guest)
on 2009-06-05 05:27
(Received via mailing list)
when I run the following matcher bellow it fails because rails adds
the timestamp after the file name. I've looked around but have not
found anyone else having this problem. I am new to rails and rspec so
maybe I am completely missing something obvious.

 response.should have_selector("#logo", :src => "/images/logo.jpg")
amkirwan (Guest)
on 2009-06-05 05:56
(Received via mailing list)
I found the answer to my own question. Just needed to use image_path
("logo.jpg"). Incase anyone else has this is I hope this helps.

response.should have_selector("#logo", :src => image_path("logo.jpg"))
Matt W. (Guest)
on 2009-06-05 10:58
(Received via mailing list)
On 5 Jun 2009, at 02:54, amkirwan wrote:

> I found the answer to my own question. Just needed to use image_path
> ("logo.jpg"). Incase anyone else has this is I hope this helps.
>
> response.should have_selector("#logo", :src => image_path("logo.jpg"))

I'd have thought there's a marginal risk (if your page renders slowly
in the test, for example) that the timestamp might change between
rendering the page and running this assertion. Another other way is to
use a looser CSS selector, something like

response.should have_selector("#logo[src*=logo.jpg]")

I can't quite remember the syntax, but the idea is to search for a tag
whose src attributes *begins with* 'logo.jpg', thereby ignoring the
timestamp entirely.


> _______________________________________________
> rspec-users mailing list
> removed_email_address@domain.invalid
> http://rubyforge.org/mailman/listinfo/rspec-users

Matt W.
http://beta.songkick.com
http://blog.mattwynne.net
This topic is locked and can not be replied to.