diff options
-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."), |