mirror of
https://github.com/journeyman-cc/smeagol.git
synced 2026-04-13 02:05:07 +00:00
added schema & use separated resolver & includer component.
This commit is contained in:
parent
464e9af7d6
commit
9607657cc1
5 changed files with 89 additions and 11 deletions
|
|
@ -1,16 +1,32 @@
|
|||
(ns smeagol.test.include
|
||||
(:require [clojure.test :refer :all]
|
||||
[schema.core :as s]
|
||||
[com.stuartsierra.component :as component]
|
||||
[smeagol.include.resolver :as resolver]
|
||||
[smeagol.include :as sut]))
|
||||
|
||||
(defn test-include-resolver [uri]
|
||||
(s/defmethod resolver/do-resolve-md :test-mock
|
||||
[resolver
|
||||
uri :- s/Str]
|
||||
(cond
|
||||
(= uri "./simple.md") "Simple content."))
|
||||
|
||||
(def system-under-test
|
||||
(component/system-map
|
||||
:resolver (sut/new-resolver test-include-resolver)))
|
||||
:resolver (resolver/new-resolver :test-mock)
|
||||
:includer (component/using
|
||||
(sut/new-includer)
|
||||
{:resolver :resolver})))
|
||||
|
||||
(deftest test-local-links
|
||||
(deftest test-expand-include-md
|
||||
(testing "Rewriting of local links"
|
||||
(is (= "Simple content." (sut/resolve-include (:resolver system-under-test) "./simple.md")))))
|
||||
(is
|
||||
(= "# Heading"
|
||||
(sut/expand-include-md (:includer system-under-test) "# Heading")))
|
||||
(is
|
||||
(= "# Heading 1
|
||||
Simple content."
|
||||
(sut/expand-include-md
|
||||
(:includer system-under-test)
|
||||
"# Heading1
|
||||
#[](.simple.md)")))))
|
||||
|
|
|
|||
8
test/smeagol/test/include/resolver.clj
Normal file
8
test/smeagol/test/include/resolver.clj
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
(ns smeagol.test.include.resolver
|
||||
(:require [clojure.test :refer :all]
|
||||
[smeagol.include.resolver :as sut]))
|
||||
|
||||
(deftest test-local-links
|
||||
(testing "Rewriting of local links"
|
||||
(is (thrown? Exception
|
||||
(sut/resolve-md (sut/new-resolver (:default)) "./some-uri.md")))))
|
||||
Loading…
Add table
Add a link
Reference in a new issue