about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--src/microformats/parser.clj8
-rw-r--r--test/microformats/parser_expectations.clj10
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."),