On 6 Sep 2010, at 15:39, David Chelimsky wrote:

> 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.

I've got no problem doing that.  On a related note, though, is there any 
possibility that Capybara matchers will ever be available in view/helper 
examples?  should_contain is a little bit open-ended for my taste.

Thanks,
BB

_______________________________________________
rspec-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to