diff options
author | Alan Pearce | 2014-09-24 19:07:20 +0100 |
---|---|---|
committer | Alan Pearce | 2014-09-24 19:11:28 +0100 |
commit | b14be70cb06dc34dfc1823c5cf5151a798ac7379 (patch) | |
tree | b6c4166761c1d58b2f857d35fd16319172f14e7e | |
parent | abce14ea6914678045a0d69adf182e5a2d5b5ee1 (diff) | |
download | microformats-b14be70cb06dc34dfc1823c5cf5151a798ac7379.tar.lz microformats-b14be70cb06dc34dfc1823c5cf5151a798ac7379.tar.zst microformats-b14be70cb06dc34dfc1823c5cf5151a798ac7379.zip |
Ignore <br> and <hr>, even if they have mf classes
This isn't actually in the spec, but microformats-tests expects it.
-rw-r--r-- | src/microformats/parser.clj | 8 | ||||
-rw-r--r-- | test/microformats/parser_expectations.clj | 10 |
2 files changed, 14 insertions, 4 deletions
diff --git a/src/microformats/parser.clj b/src/microformats/parser.clj index 4706992..0454d21 100644 --- a/src/microformats/parser.clj +++ b/src/microformats/parser.clj @@ -223,16 +223,16 @@ :photo (list (parse-implied-photo element))}))) (defn- select-p - [element] (html/select element [(html/attr-contains :class "p-")])) + [element] (html/select element [[(html/but-node #{:br :hr}) (html/attr-contains :class "p-")]])) (defn- select-u - [element] (html/select element [(html/attr-contains :class "u-")])) + [element] (html/select element [[(html/but-node #{:br :hr}) (html/attr-contains :class "u-")]])) (defn- select-dt - [element] (html/select element [(html/attr-contains :class "dt-")])) + [element] (html/select element [[(html/but-node #{:br :hr}) (html/attr-contains :class "dt-")]])) (defn- select-e - [element] (html/select element [(html/attr-contains :class "e-")])) + [element] (html/select element [[(html/but-node #{:br :hr}) (html/attr-contains :class "e-")]])) (defn get-mf-properties "Parse children of a microformat, returning a map of properties" diff --git a/test/microformats/parser_expectations.clj b/test/microformats/parser_expectations.clj index e89833b..7a94929 100644 --- a/test/microformats/parser_expectations.clj +++ b/test/microformats/parser_expectations.clj @@ -186,6 +186,16 @@ <a class=\"u-url\" href=\"http://myblog.com\">My Blog</a> </div>")) +(expect {:items [{:type ["h-card"] + :properties {:name '("Example") + :tel '("01234567890")}}] + :rels {}} + (parse "<div class=\"h-card\"> +<p class=\"p-name\">Example</p> +<p class=\"p-tel\">01234567890</p> +<br class=\"p-tel\"> +</div>")) + (expect {:items [{:type ["h-adr"], :properties {:street-address '("665 3rd St."), |