diff options
-rw-r--r-- | src/microformats/parser.clj | 2 | ||||
-rw-r--r-- | test/microformats/parser_test.clj | 10 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/microformats/parser.clj b/src/microformats/parser.clj index 959e1af..94e8381 100644 --- a/src/microformats/parser.clj +++ b/src/microformats/parser.clj @@ -43,7 +43,7 @@ :abbr (-> el :attrs :title) :data (-> el :attrs :value) :input (-> el :attrs :value) - (first (:content el)))) + (or (first (:content el)) ""))) (defn parse-p "Parse p-* classes within HTML element." diff --git a/test/microformats/parser_test.clj b/test/microformats/parser_test.clj index d9942f4..1de377c 100644 --- a/test/microformats/parser_test.clj +++ b/test/microformats/parser_test.clj @@ -29,3 +29,13 @@ {:items [{:properties {:name "Example User"}}] :rels {}} "<div class=\"h-card\"><data class=\"p-name\" value=\"Example User\"></data></div>" ))) + +(deftest parse-p-empty-br-hr + (testing "br and hr tags should return empty strings" + (are [ex in] (= ex (parse in)) + {:items [{:properties {:name ""}}] :rels {}} + "<div class=\"h-card\"><br class=\"p-name\"/></div>" + + {:items [{:properties {:name ""}}] :rels {}} + "<div class=\"h-card\"><hr class=\"p-name\"/></div>") + )) |