xml_spec: Standardize XPath expressions
The XML examples used in `Xml` strategy tests is known/predictable, so the related XPaths can be explicit instead of loose.
This commit is contained in:
parent
9bfe423a5a
commit
5a3632efa4
@ -183,11 +183,11 @@ describe Homebrew::Livecheck::Strategy::Xml do
|
|||||||
|
|
||||||
# Returning an array of strings from block
|
# Returning an array of strings from block
|
||||||
expect(xml.versions_from_content(content_version_text, regex) do |xml, regex|
|
expect(xml.versions_from_content(content_version_text, regex) do |xml, regex|
|
||||||
xml.get_elements("versions//version").map { |item| item.text[regex, 1] }
|
xml.get_elements("/versions/version").map { |item| item.text[regex, 1] }
|
||||||
end).to eq(content_matches)
|
end).to eq(content_matches)
|
||||||
|
|
||||||
expect(xml.versions_from_content(content_version_attr, regex) do |xml, regex|
|
expect(xml.versions_from_content(content_version_attr, regex) do |xml, regex|
|
||||||
xml.get_elements("items//item").map do |item|
|
xml.get_elements("/items/item").map do |item|
|
||||||
version = item["version"]
|
version = item["version"]
|
||||||
next if version.blank?
|
next if version.blank?
|
||||||
|
|
||||||
@ -214,7 +214,7 @@ describe Homebrew::Livecheck::Strategy::Xml do
|
|||||||
describe "::find_versions?" do
|
describe "::find_versions?" do
|
||||||
it "finds versions in provided_content using a block" do
|
it "finds versions in provided_content using a block" do
|
||||||
expect(xml.find_versions(url: http_url, regex: regex, provided_content: content_version_text) do |xml, regex|
|
expect(xml.find_versions(url: http_url, regex: regex, provided_content: content_version_text) do |xml, regex|
|
||||||
xml.get_elements("versions//version").map { |item| item.text[regex, 1] }
|
xml.get_elements("/versions/version").map { |item| item.text[regex, 1] }
|
||||||
end).to eq(find_versions_cached_return_hash)
|
end).to eq(find_versions_cached_return_hash)
|
||||||
|
|
||||||
# NOTE: A regex should be provided using the `#regex` method in a
|
# NOTE: A regex should be provided using the `#regex` method in a
|
||||||
@ -223,7 +223,7 @@ describe Homebrew::Livecheck::Strategy::Xml do
|
|||||||
# regex isn't provided.
|
# regex isn't provided.
|
||||||
expect(xml.find_versions(url: http_url, provided_content: content_version_text) do |xml|
|
expect(xml.find_versions(url: http_url, provided_content: content_version_text) do |xml|
|
||||||
regex = /^v?(\d+(?:\.\d+)+)$/i.freeze
|
regex = /^v?(\d+(?:\.\d+)+)$/i.freeze
|
||||||
xml.get_elements("versions//version").map { |item| item.text[regex, 1] }
|
xml.get_elements("/versions/version").map { |item| item.text[regex, 1] }
|
||||||
end).to eq(find_versions_cached_return_hash.merge({ regex: nil }))
|
end).to eq(find_versions_cached_return_hash.merge({ regex: nil }))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user