[rspec-users] should contain vs. =~
David Chelimsky
dchelimsky at gmail.com
Mon Sep 6 10:39:58 EDT 2010
On Sep 6, 2010, at 9:20 AM, Brennon Bortz wrote:
> On 6 Sep 2010, at 14:55, David Chelimsky wrote:
>
>> On Sep 6, 2010, at 8:15 AM, Brennon Bortz wrote:
>>
>>> I'm developing another view test. Relevant example:
>>>
>>> it "should show the item's url" do
>>> rendered.should contain("http://www.example.com")
>>> end
>>>
>>> I'm calling render in a before block. I have other similar examples on the page in which I'm simply using:
>>>
>>> rendered.should =~ "..."
>>>
>>> These all work fine, as does the first example I posted here. However, when trying to express that first example with a regex (which I prefer), the example fails:
>>>
>>> it "should show the item's url" do
>>> rendered.should =~ /http:\/\/www.example.com/
>>> end
>>>
>>> Am I missing something?
>
>
> Failures:
> 1) widgets/show.html.erb widget details should show the widget's url
> Failure/Error: rendered.should =~ /http:\/\/www.example.com/
> expected: /http:\/\/www.example.com/,
> got: "http://www.example.com" (using =~)
>
> I realise this is because of the escaped HTML output, but I'm not quite sure what to do about it...
I think contain is your best bet here, unless you actually want to change the expectation so it includes the escaped characters.
FWIW,
David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/rspec-users/attachments/20100906/7d58ffcf/attachment.html>
More information about the rspec-users
mailing list