! Copyright (C) 2008 Doug Coleman. ! See http://factorcode.org/license.txt for BSD license. USING: farkup kernel peg peg.ebnf tools.test namespaces xml urls.encoding assocs xml.traversal xml.data sequences random io continuations math ; IN: farkup.tests relative-link-prefix off disable-images? off link-no-follow? off [ "Baz" ] [ "Foo/Bar/Baz" simple-link-title ] unit-test [ "Baz" ] [ "Baz" simple-link-title ] unit-test [ ] [ "abcd-*strong*\nasdifj\nweouh23ouh23" parse-farkup drop ] unit-test [ ] [ "abcd-*strong*\nasdifj\nweouh23ouh23\n" parse-farkup drop ] unit-test [ "
a-b
" ] [ "a-b" convert-farkup ] unit-test [ "foo
bar
" ] [ "*foo\nbar\n" convert-farkup ] unit-test [ "Wow!
" ] [ "*Wow!*" convert-farkup ] unit-test [ "Wow.
" ] [ "_Wow._" convert-farkup ] unit-test [ "" ] [ "*" convert-farkup ] unit-test [ "
*
" ] [ "\\*" convert-farkup ] unit-test [ "*
" ] [ "\\**" convert-farkup ] unit-test [ "bar
" ] [ "-foo\nbar\n" convert-farkup ] unit-test [ "bar
" ] [ "#foo\nbar\n" convert-farkup ] unit-test [ "" ] [ "\n\n" convert-farkup ] unit-test [ "" ] [ "\r\n\r\n" convert-farkup ] unit-test [ "" ] [ "\r\r\r\r" convert-farkup ] unit-test [ "" ] [ "\r\r\r" convert-farkup ] unit-test [ "" ] [ "\n\n\n" convert-farkup ] unit-test [ "foo
bar
" ] [ "foo\n\nbar" convert-farkup ] unit-test [ "foo
bar
" ] [ "foo\r\n\r\nbar" convert-farkup ] unit-test [ "foo
bar
" ] [ "foo\r\rbar" convert-farkup ] unit-test [ "foo
bar
" ] [ "foo\r\r\nbar" convert-farkup ] unit-test [ "bar
" ] [ "\nbar\n" convert-farkup ] unit-test [ "bar
" ] [ "\rbar\r" convert-farkup ] unit-test [ "bar
" ] [ "\r\nbar\r\n" convert-farkup ] unit-test [ "foo
bar
" ] [ "foo\n\n\nbar" convert-farkup ] unit-test [ "" ] [ "" convert-farkup ] unit-test [ "a |
a |
a | b |
a | b |
c | d |
a | b |
c | d |
foo
adfasd
" ] [ "*foo*\n=aheading=\nadfasd" convert-farkup ] unit-test [ "lol=foo=
" ] [ "lol=foo=\n" convert-farkup ] unit-test [ "=foo
" ] [ "=foo\n" convert-farkup ] unit-test [ "=foo
" ] [ "=foo" convert-farkup ] unit-test [ "==foo
" ] [ "==foo" convert-farkup ] unit-test [ "int main()" ] [ "[c{int main()}]" convert-farkup ] unit-test [ "
hello" ] [ "[{hello}]" convert-farkup ] unit-test [ "
Feature comparison:
a | Factor | Java | Lisp |
Coolness | Yes | No | No |
Badass | Yes | No | No |
Enterprise | Yes | Yes | No |
Kosher | Yes | No | Yes |
Feature comparison:
a | Factor | Java | Lisp |
Coolness | Yes | No | No |
Badass | Yes | No | No |
Enterprise | Yes | Yes | No |
Kosher | Yes | No | Yes |
This wiki is written in Factor and is hosted on a http://linode.com virtual server.
" ] [ "This wiki is written in [[Factor]] and is hosted on a [[http://linode.com|http://linode.com]] virtual server." convert-farkup ] unit-test [ "" ] [ "[[a]] [[b|c]]" convert-farkup ] unit-test [ "" ] [ "[[C++]]" convert-farkup ] unit-test [ "<foo>
" ] [ "asdf
asdf
before:
{ 1 2 3 } 1 tail" ] [ "before:\n[factor{{ 1 2 3 } 1 tail}]" convert-farkup ] unit-test [ "
Factor-rific!
" ] [ "[[Factor]]-rific!" convert-farkup ] unit-test [ "1 2 3" ] [ "[ factor { 1 2 3 }]" convert-farkup ] unit-test [ "
paragraph
paragraph
a b
" ] [ "paragraph\n a ___ b" convert-farkup ] unit-test [ "helloworld how are you today?
bold | italics |
italicsboth
" ] [ "_italics*both" convert-farkup ] unit-test [ "italicsboth
" ] [ "_italics*both*" convert-farkup ] unit-test [ "italicsboth
" ] [ "_italics*both*_" convert-farkup ] unit-test [ "italicsboth
" ] [ "_italics*both_" convert-farkup ] unit-test [ "italicsbothafter
" ] [ "_italics*both_after*" convert-farkup ] unit-test [ "foo|bar |
[abc]
" ] [ "[abc]" convert-farkup ] unit-test : random-markup ( -- string ) 10 [ 2 random 1 = [ { "[[" "*" "_" "|" "-" "[{" "\n" } random ] [ "abc" ] if ] replicate concat ; [ t ] [ 100 [ drop random-markup [ convert-farkup drop t ] [ drop print f ] recover ] all? ] unit-test [ "" ] [ "[[http://foo.com/~foo]]" convert-farkup ] unit-test