     (let [comp (component "list.html" [:ul [:li (nth-match 2)]] {})]
       (is (= "<li>2</li>" (render-dom comp)))))
 
+  (testing "registering a custom selector"
+    (let [comp (component "list.html" [:ul [:li (test-sel)]] {})]
+      (is (= "<li>1</li>" (render-dom comp)))))
+
+  (testing "fully qualified selector"
+    (let [comp (component "list.html" [:ul [:li (kioo.core/nth-match 2)]] {})]
+      (is (= "<li>2</li>" (render-dom comp)))))
+
   (testing "attr= content replace"
     (let [comp (component "simple-attr-div.html"
-                          {[(attr= :data-id "tmp")]
-                           (content "success")})]
+                 {[(attr= :data-id "tmp")]
+                  (content "success")})]
       (is (= "<div data-id=\"tmp\">success</div>" (render-dom comp)))))
   (testing "attr? content replace"
     (let [comp (component "simple-attr-div.html"
-                          {[(attr? :data-id)]
-                           (content "success")})]
+                 {[(attr? :data-id)]
+                  (content "success")})]
       (is (= "<div data-id=\"tmp\">success</div>" (render-dom comp)))))
   (testing "append test"
     (let [comp (component "simple-div.html"
-                          {[:div] (append "success")})]
+                 {[:div] (append "success")})]
       ;;note that ract wraps text nodes in span tags
       ;;this is expected to be corrected soon in react but
       ;;for now this is correct

            [kioo.test :refer [render-dom]]
            [goog.dom :as gdom])
  (:require-macros [kioo.core :refer [component  snippet template
                                    defsnippet deftemplate supress-whitespace]]
                   [cljs.test :refer [are is deftest testing]]))


(deftest render-test
  (testing "basic render test"

      (is (= "<div id=\"tmp\">test</div>" (render-dom comp)))))
  (testing "content replace"
    (let [comp (component "simple-div.html"
                 {[:div] (content "success")})]
      (is (= "<div id=\"tmp\">success</div>" (render-dom comp)))))
  (testing "first-of-type naked symbol"
    (let [comp (component "list.html" [:ul [:li first-of-type]] {})]
