Webrat or RSpec and Table Headers

Hi all,

Suppose I have a table that lists all of my products, that
includes a a somewhere in the first , and each product has its data
held
within a . After updating a product’s description, I want to write
something like:

within “tr#category#{category.id}” do
under_header
“Description” do |scope|
scope.contains “New Description”
end
end

in a
Cucumber/webrat feature definition or

response.should
have_tag(“tr#category1”) do
under_header “Description” do
text => "Howdy

end
end

in an RSpec spec. Is there anything like this available, any way
to search within a specific table column by specifying the header?

Cheers,
Shea

On Dec 29, 2010, at 1:14 AM, Shea Levy wrote:

in a Cucumber/webrat feature definition or

not exactly what you’re asking but I do this:

Then I should see “New description” on the row containing “Widget Xyz”

Then /^(?:|I )should see “([^”])" on the row containing “([^”])"(?:
within “([^”]*)")?$/ do |text1, text, scope|
selector = “.//td[contains(.,’#{text}’)]//…”
with_scope(scope) do
within(:xpath, selector) do
Then %{I should see “#{text1}”}
end
end
end

On 29 Dec 2010, at 06:14, Shea Levy wrote:

in a Cucumber/webrat feature definition or
Shea

It’s worth looking at the tableish method that cucumber-rails provides.
You can use it to turn a HTML table element into an array. You can even
diff it against a Cucumber::Ast::Table object.

cheers,
Matt

[email protected]
07974 430184

On 29 Dec 2010, at 10:21, Matt W. wrote:

end
in an RSpec spec. Is there anything like this available, any way to search
within a specific table column by specifying the header?

Cheers,
Shea

It’s worth looking at the tableish method that cucumber-rails provides. You can
use it to turn a HTML table element into an array. You can even diff it against a
Cucumber::Ast::Table object.

Oops, just realised you’re posting to the RSpec, not the Cucumber list.
My mistake.

cheers,
Matt

[email protected]
07974 430184