var model = new Model
var modelbuilder = new ModelBuilder(model, toolcontext)
-var mmodules = modelbuilder.parse(args)
+var module_files = modelbuilder.filter_nit_source(args)
+
+var mmodules = modelbuilder.parse_full(module_files)
modelbuilder.run_phases
if toolcontext.opt_gen_unit.value then
if toolcontext.opt_full.value then mmodules = model.mmodules
+for a in args do
+ if not a.file_exists then
+ toolcontext.fatal_error(null, "Error: cannot load file or module `{a}`.")
+ end
+ # Try to load the file as a markdown document
+ var mdoc = modelbuilder.load_markdown(a)
+ page.add modelbuilder.test_mdoc(mdoc)
+end
+
+for a in module_files do
+ var g = modelbuilder.get_mgroup(a)
+ if g == null then continue
+ page.add modelbuilder.test_group(g)
+end
+
for m in mmodules do
page.add modelbuilder.test_markdown(m)
page.add modelbuilder.test_unit(m)
var file = toolcontext.opt_output.value
if file == null then file = "nitunit.xml"
page.write_to_file(file)
-print "Results saved in {file}"
# print docunits results
-print "\nDocUnits:"
+print "DocUnits:"
if modelbuilder.unit_entities == 0 then
print "No doc units found"
else if modelbuilder.failed_entities == 0 and not toolcontext.opt_noact.value then