From 5a3632efa4918600108bdf827c428b374b2fca4d Mon Sep 17 00:00:00 2001 From: Sam Ford <1584702+samford@users.noreply.github.com> Date: Fri, 17 Nov 2023 20:04:02 -0500 Subject: [PATCH] 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. --- Library/Homebrew/test/livecheck/strategy/xml_spec.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Library/Homebrew/test/livecheck/strategy/xml_spec.rb b/Library/Homebrew/test/livecheck/strategy/xml_spec.rb index 440147a2a6..5a1f4dab88 100644 --- a/Library/Homebrew/test/livecheck/strategy/xml_spec.rb +++ b/Library/Homebrew/test/livecheck/strategy/xml_spec.rb @@ -183,11 +183,11 @@ describe Homebrew::Livecheck::Strategy::Xml do # Returning an array of strings from block 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) 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"] next if version.blank? @@ -214,7 +214,7 @@ describe Homebrew::Livecheck::Strategy::Xml do describe "::find_versions?" 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| - 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) # 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. expect(xml.find_versions(url: http_url, provided_content: content_version_text) do |xml| 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