clone url: git://git.m455.casa/fa
esperbuild/espersrc/fennel-0.7.0/test/mangling.fnl
1 | (local l (require :test.luaunit)) |
2 | (local fennel (require :fennel)) |
3 |
|
4 | (local mangling-tests {:3 "__fnl_global__3" |
5 | :a "a" |
6 | :a-b-c "__fnl_global__a_2db_2dc" |
7 | :a_3 "a_3" |
8 | :a_b-c "__fnl_global__a_5fb_2dc"}) |
9 |
|
10 | (fn test-mangling [] |
11 | (each [k v (pairs mangling-tests)] |
12 | (let [manglek (fennel.mangle k) |
13 | unmanglev (fennel.unmangle v)] |
14 | (l.assertEquals v manglek) |
15 | (l.assertEquals k unmanglev))) |
16 | ;; adding an env for evaluation causes global mangling rules to apply |
17 | (l.assertTrue (fennel.eval "(global mangled-name true) mangled-name" |
18 | {:env {}}))) |
19 |
|
20 | {: test-mangling} |
21 |
|