1
我正在使用Eliom構建一個新項目,並且無法使用OUnit爲單元測試設置編譯過程。Eliom Framework中的單元測試
我有兩個文件:
Js_Client_Code.eliom - contains all of the client side code
Project.eliom - contains all of the server side code (including opening Js_Client_Code.eliom)
我以這種方式建立的文件,這樣我就可以不使用ocsigenserver
上Js_Client_Code.eliom運行單元測試。
這是我的測試電流生成文件:
test: prep unit_tests
prep:
eliomc -infer Js_Client_Code.eliom
js_of_eliom -linkall -a Js_Client_Code.eliom -o file_a.cma
eliomc -a -linkall Js_Client_Code.eliom -o file_b.cma
# Code is here to move the cma files back to the parent directory, since they are written to _client/ and _server/ by default
unit_tests:
ocamlfind ocamlc -thread -syntax camlp4o -package ounit,js_of_ocaml.syntax \
-linkpkg -g -o UnitTests file_a.cma file_b.cma unit_tests.ml
運行make test
在外殼產生
File "unit_tests.ml", line 1:
Error: Error while linking file_a.cma(Js_Client_Code):
Reference to undefined global `Eliom_client'
我誤解了Eliom/Js_of_ocaml編譯過程,或只是要對這個錯誤的辦法?