summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--features/steps/shared/markdown.rb8
1 files changed, 6 insertions, 2 deletions
diff --git a/features/steps/shared/markdown.rb b/features/steps/shared/markdown.rb
index e71700880cd..a7231c47d14 100644
--- a/features/steps/shared/markdown.rb
+++ b/features/steps/shared/markdown.rb
@@ -2,8 +2,12 @@ module SharedMarkdown
include Spinach::DSL
def header_should_have_correct_id_and_link(level, text, id, parent = ".wiki")
- find(:css, "#{parent} h#{level}##{id}").text.should == text
- find(:css, "#{parent} h#{level}##{id} > :last-child")[:href].should =~ /##{id}$/
+ node = find("#{parent} h#{level} a##{id}")
+ node[:href].should == "##{id}"
+
+ # Work around a weird Capybara behavior where calling `parent` on a node
+ # returns the whole document, not the node's actual parent element
+ find(:xpath, "#{node.path}/..").text.should == text
end
def create_taskable(type, title)