spec/watirspec/elements/dl_spec.rb in watir-6.10.1 vs spec/watirspec/elements/dl_spec.rb in watir-6.10.2
- old
+ new
@@ -1,142 +1,142 @@
-require "watirspec_helper"
-
-describe "Dl" do
-
- before :each do
- browser.goto(WatirSpec.url_for("definition_lists.html"))
- end
-
- # Exists method
- describe "#exists?" do
- it "returns true if the element exists" do
- expect(browser.dl(id: "experience-list")).to exist
- expect(browser.dl(class: "list")).to exist
- expect(browser.dl(xpath: "//dl[@id='experience-list']")).to exist
- expect(browser.dl(index: 0)).to exist
- end
-
- it "returns the first dl if given no args" do
- expect(browser.dl).to exist
- end
-
- it "returns false if the element does not exist" do
- expect(browser.dl(id: "no_such_id")).to_not exist
- end
-
- it "raises TypeError when 'what' argument is invalid" do
- expect { browser.dl(id: 3.14).exists? }.to raise_error(TypeError)
- end
- end
-
- # Attribute methods
- describe "#class_name" do
- it "returns the class attribute if the element exists" do
- expect(browser.dl(id: "experience-list").class_name).to eq "list"
- end
-
- it "returns an empty string if the element exists but the attribute doesn't" do
- expect(browser.dl(id: "noop").class_name).to eq ""
- end
-
- it "raises UnknownObjectException if the element does not exist" do
- expect { browser.dl(id: "no_such_id").class_name }.to raise_unknown_object_exception
- expect { browser.dl(title: "no_such_title").class_name }.to raise_unknown_object_exception
- expect { browser.dl(index: 1337).class_name }.to raise_unknown_object_exception
- expect { browser.dl(xpath: "//dl[@id='no_such_id']").class_name }.to raise_unknown_object_exception
- end
- end
-
- describe "#id" do
- it "returns the id attribute if the element exists" do
- expect(browser.dl(class: 'list').id).to eq "experience-list"
- end
-
- it "returns an empty string if the element exists, but the attribute doesn't" do
- expect(browser.dl(class: 'personalia').id).to eq ""
- end
-
- it "raises UnknownObjectException if the element does not exist" do
- expect {browser.dl(id: "no_such_id").id }.to raise_unknown_object_exception
- expect {browser.dl(title: "no_such_id").id }.to raise_unknown_object_exception
- expect {browser.dl(index: 1337).id }.to raise_unknown_object_exception
- end
- end
-
- describe "#title" do
- it "returns the id attribute if the element exists" do
- expect(browser.dl(class: 'list').title).to eq "experience"
- end
- end
-
- describe "#text" do
- it "returns the text of the element" do
- expect(browser.dl(id: "experience-list").text).to include("11 years")
- end
-
- bug "Safari does not strip text", :safari do
- it "returns an empty string if the element exists but contains no text" do
- expect(browser.dl(id: 'noop').text).to eq ""
- end
- end
-
- it "raises UnknownObjectException if the element does not exist" do
- expect { browser.dl(id: "no_such_id").text }.to raise_unknown_object_exception
- expect { browser.dl(title: "no_such_title").text }.to raise_unknown_object_exception
- expect { browser.dl(index: 1337).text }.to raise_unknown_object_exception
- expect { browser.dl(xpath: "//dl[@id='no_such_id']").text }.to raise_unknown_object_exception
- end
- end
-
- describe "#respond_to?" do
- it "returns true for all attribute methods" do
- expect(browser.dl(index: 0)).to respond_to(:id)
- expect(browser.dl(index: 0)).to respond_to(:class_name)
- expect(browser.dl(index: 0)).to respond_to(:style)
- expect(browser.dl(index: 0)).to respond_to(:text)
- expect(browser.dl(index: 0)).to respond_to(:title)
- end
- end
-
- # Manipulation methods
- describe "#click" do
- it "fires events when clicked" do
- expect(browser.dt(id: 'name').text).to_not eq 'changed!'
- browser.dt(id: 'name').click
- expect(browser.dt(id: 'name').text).to eq 'changed!'
- end
-
- it "raises UnknownObjectException if the element does not exist" do
- expect { browser.dl(id: "no_such_id").click }.to raise_unknown_object_exception
- expect { browser.dl(title: "no_such_title").click }.to raise_unknown_object_exception
- expect { browser.dl(index: 1337).click }.to raise_unknown_object_exception
- expect { browser.dl(xpath: "//dl[@id='no_such_id']").click }.to raise_unknown_object_exception
- end
- end
-
- describe "#html" do
- it "returns the HTML of the element" do
- html = browser.dl(id: 'experience-list').html.downcase
- not_compliant_on :internet_explorer do
- expect(html).to include('<dt class="current-industry">')
- end
-
- deviates_on :internet_explorer do
- expect(html).to include('<dt class=current-industry>')
- end
-
- expect(html).to_not include('</body>')
- end
- end
-
- describe "#to_hash" do
- it "converts the dl to a Hash" do
- expect(browser.dl(id: 'experience-list').to_hash).to eq Hash[
- "Experience" => "11 years",
- "Education" => "Master",
- "Current industry" => "Architecture",
- "Previous industry experience" => "Architecture"
- ]
- end
- end
-
-end
+require "watirspec_helper"
+
+describe "Dl" do
+
+ before :each do
+ browser.goto(WatirSpec.url_for("definition_lists.html"))
+ end
+
+ # Exists method
+ describe "#exists?" do
+ it "returns true if the element exists" do
+ expect(browser.dl(id: "experience-list")).to exist
+ expect(browser.dl(class: "list")).to exist
+ expect(browser.dl(xpath: "//dl[@id='experience-list']")).to exist
+ expect(browser.dl(index: 0)).to exist
+ end
+
+ it "returns the first dl if given no args" do
+ expect(browser.dl).to exist
+ end
+
+ it "returns false if the element does not exist" do
+ expect(browser.dl(id: "no_such_id")).to_not exist
+ end
+
+ it "raises TypeError when 'what' argument is invalid" do
+ expect { browser.dl(id: 3.14).exists? }.to raise_error(TypeError)
+ end
+ end
+
+ # Attribute methods
+ describe "#class_name" do
+ it "returns the class attribute if the element exists" do
+ expect(browser.dl(id: "experience-list").class_name).to eq "list"
+ end
+
+ it "returns an empty string if the element exists but the attribute doesn't" do
+ expect(browser.dl(id: "noop").class_name).to eq ""
+ end
+
+ it "raises UnknownObjectException if the element does not exist" do
+ expect { browser.dl(id: "no_such_id").class_name }.to raise_unknown_object_exception
+ expect { browser.dl(title: "no_such_title").class_name }.to raise_unknown_object_exception
+ expect { browser.dl(index: 1337).class_name }.to raise_unknown_object_exception
+ expect { browser.dl(xpath: "//dl[@id='no_such_id']").class_name }.to raise_unknown_object_exception
+ end
+ end
+
+ describe "#id" do
+ it "returns the id attribute if the element exists" do
+ expect(browser.dl(class: 'list').id).to eq "experience-list"
+ end
+
+ it "returns an empty string if the element exists, but the attribute doesn't" do
+ expect(browser.dl(class: 'personalia').id).to eq ""
+ end
+
+ it "raises UnknownObjectException if the element does not exist" do
+ expect {browser.dl(id: "no_such_id").id }.to raise_unknown_object_exception
+ expect {browser.dl(title: "no_such_id").id }.to raise_unknown_object_exception
+ expect {browser.dl(index: 1337).id }.to raise_unknown_object_exception
+ end
+ end
+
+ describe "#title" do
+ it "returns the id attribute if the element exists" do
+ expect(browser.dl(class: 'list').title).to eq "experience"
+ end
+ end
+
+ describe "#text" do
+ it "returns the text of the element" do
+ expect(browser.dl(id: "experience-list").text).to include("11 years")
+ end
+
+ bug "Safari does not strip text", :safari do
+ it "returns an empty string if the element exists but contains no text" do
+ expect(browser.dl(id: 'noop').text).to eq ""
+ end
+ end
+
+ it "raises UnknownObjectException if the element does not exist" do
+ expect { browser.dl(id: "no_such_id").text }.to raise_unknown_object_exception
+ expect { browser.dl(title: "no_such_title").text }.to raise_unknown_object_exception
+ expect { browser.dl(index: 1337).text }.to raise_unknown_object_exception
+ expect { browser.dl(xpath: "//dl[@id='no_such_id']").text }.to raise_unknown_object_exception
+ end
+ end
+
+ describe "#respond_to?" do
+ it "returns true for all attribute methods" do
+ expect(browser.dl(index: 0)).to respond_to(:id)
+ expect(browser.dl(index: 0)).to respond_to(:class_name)
+ expect(browser.dl(index: 0)).to respond_to(:style)
+ expect(browser.dl(index: 0)).to respond_to(:text)
+ expect(browser.dl(index: 0)).to respond_to(:title)
+ end
+ end
+
+ # Manipulation methods
+ describe "#click" do
+ it "fires events when clicked" do
+ expect(browser.dt(id: 'name').text).to_not eq 'changed!'
+ browser.dt(id: 'name').click
+ expect(browser.dt(id: 'name').text).to eq 'changed!'
+ end
+
+ it "raises UnknownObjectException if the element does not exist" do
+ expect { browser.dl(id: "no_such_id").click }.to raise_unknown_object_exception
+ expect { browser.dl(title: "no_such_title").click }.to raise_unknown_object_exception
+ expect { browser.dl(index: 1337).click }.to raise_unknown_object_exception
+ expect { browser.dl(xpath: "//dl[@id='no_such_id']").click }.to raise_unknown_object_exception
+ end
+ end
+
+ describe "#html" do
+ it "returns the HTML of the element" do
+ html = browser.dl(id: 'experience-list').html.downcase
+ not_compliant_on :internet_explorer do
+ expect(html).to include('<dt class="current-industry">')
+ end
+
+ deviates_on :internet_explorer do
+ expect(html).to include('<dt class=current-industry>')
+ end
+
+ expect(html).to_not include('</body>')
+ end
+ end
+
+ describe "#to_hash" do
+ it "converts the dl to a Hash" do
+ expect(browser.dl(id: 'experience-list').to_hash).to eq Hash[
+ "Experience" => "11 years",
+ "Education" => "Master",
+ "Current industry" => "Architecture",
+ "Previous industry experience" => "Architecture"
+ ]
+ end
+ end
+
+end