Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Strip and normalize spaces. Fixes #112 #145

  • Loading branch information...
commit 6d92f35d98cdcfdea58d10776db2afe45f5272ef 1 parent ff0a6e7
@halogenandtoast halogenandtoast authored
Showing with 9 additions and 1 deletion.
  1. +4 −1 lib/capybara/driver/webkit/node.rb
  2. +5 −0 spec/driver_spec.rb
View
5 lib/capybara/driver/webkit/node.rb
@@ -1,7 +1,10 @@
class Capybara::Driver::Webkit
class Node < Capybara::Driver::Node
+ NBSP = "\xC2\xA0"
+ NBSP.force_encoding("UTF-8") if NBSP.respond_to?(:force_encoding)
+
def text
- invoke "text"
+ invoke("text").gsub(NBSP, ' ').gsub(/\s+/u, ' ').strip
end
def [](name)
View
5 spec/driver_spec.rb
@@ -159,6 +159,7 @@
</style>
</head>
<body>
+ <div class='normalize'>Spaces&nbsp;not&nbsp;normalized&nbsp;</div>
<div id="display_none">
<div id="invisible">Can't see me</div>
</div>
@@ -202,6 +203,10 @@
subject.find("//p").first.text.should == "hello"
end
+ it "normalizes a node's text" do
+ subject.find("//div[contains(@class, 'normalize')]").first.text.should == "Spaces not normalized"
+ end
+
it "returns the current URL" do
port = subject.instance_variable_get("@rack_server").port
subject.current_url.should == "http://127.0.0.1:#{port}/hello/world?success=true"
Please sign in to comment.
Something went wrong with that request. Please try again.