(column-table s {:keys [labels sep rows]} {:keys [assign exec asserts]})
Take a table of data and assert a bunch of stuff on it. The
assign
map should contain mappings from labels in the table to
keys they should be mapped to in the s
collection. The exec
should be
a single function to be executed for each row. It will receive the
current state after having all the assignments made. It should return
the state to be passed to the assertions, and eventually, the next row.
Finally, the assert
should contain yet another map of labels to keys in the
state that should match.
Take a table of data and assert a bunch of stuff on it. The `assign` map should contain mappings from labels in the table to keys they should be mapped to in the `s` collection. The `exec` should be a single function to be executed for each row. It will receive the current state after having all the assignments made. It should return the state to be passed to the assertions, and eventually, the next row. Finally, the `assert` should contain yet another map of labels to keys in the state that should match.
(defop n [s] & body)
Defines an operation that can be executed in your document. Accepts a
name (n
) that will be referred to in brackets in the document. The body
will be of a function that accepts a single parameter s
. That parameter
will be filled in with the current state of the running tests.
An example op reference in your doc could be: op::[do something]
Your operation must return whatever parts of s
your operation wishes to
pass on to future operations and/or assertions.
Defines an operation that can be executed in your document. Accepts a name (`n`) that will be referred to in brackets in the document. The body will be of a function that accepts a single parameter `s`. That parameter will be filled in with the current state of the running tests. An example op reference in your doc could be: `op::[do something]` Your operation *must* return whatever parts of `s` your operation wishes to pass on to future operations and/or assertions.
(defproc n [s a] & body)
Defines a procedure that can be executed in your document. Accepts a
name (n
) and a set of bindings s
and a
. Just as in defop
, the
state will be bound to s
and must be passed back out of your proc
with whatever changes need to be made. a
will be bound to the
a map of arguments. Check out
http://www.methods.co.nz/asciidoc/chunked/ch21.html for more info.
Defines a procedure that can be executed in your document. Accepts a name (`n`) and a set of bindings `s` and `a`. Just as in `defop`, the state will be bound to `s` and must be passed back out of your proc with whatever changes need to be made. `a` will be bound to the a map of arguments. Check out <http://www.methods.co.nz/asciidoc/chunked/ch21.html> for more info.
(deftfn n [s t] & body)
Defines a table processing function. Accepts a name (n
) that will be
referred to in brackets in the table's legend. The body will be of a
function that accepts two parameters: s
, the current state of the running
tests, and t
, a structure containing the parsed table structure.
Your operation must return a vector containing an updated [s
t
]. The
value of s
will be sent to the next operation, whereas t
will be
re-constituted into a table and inserted into the markdown stream.
Defines a table processing function. Accepts a name (`n`) that will be referred to in brackets in the table's legend. The body will be of a function that accepts two parameters: `s`, the current state of the running tests, and `t`, a structure containing the parsed table structure. Your operation must return a vector containing an updated [`s` `t`]. The value of `s` will be sent to the next operation, whereas `t` will be re-constituted into a table and inserted into the markdown stream.
(exec-file {:keys [file] :as s})
Run a file on the classpath through the asciidoc parser/generator
Run a file on the classpath through the asciidoc parser/generator
(execute-asciidoc initial-state in out)
Parse an Asciidoc document on in
that contains bindings, assertions, and/or
operations, executing them, and writing the modified markdown into the given
out-stream
.
Parse an Asciidoc document on `in` that contains bindings, assertions, and/or operations, executing them, and writing the modified markdown into the given `out-stream`.
(run file)
(run f out-file)
Execute file
. If out-file
is specified, results will be written there.
Otherwise they will be written to file
without the .adoc
and with
.html
. AKA: README.adoc -> README.html
Execute `file`. If `out-file` is specified, results will be written there. Otherwise they will be written to `file` without the `.adoc` and with `.html`. AKA: `README.adoc -> README.html`
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close