/*** Modern Albufeira Prolog Interpreter** Warranty & Liability* To the extent permitted by applicable law and unless explicitly* otherwise agreed upon, XLOG Technologies AG makes no warranties* regarding the provided information. XLOG Technologies AG assumes* no liability that any problems might be solved with the information* provided by XLOG Technologies AG.** Rights & License* All industrial property rights regarding the information - copyright* and patent rights in particular - are the sole property of XLOG* Technologies AG. If the company was not the originator of some* excerpts, XLOG Technologies AG has at least obtained the right to* reproduce, change and translate the information.** Reproduction is restricted to the whole unaltered document. Reproduction* of the information is only allowed for non-commercial uses. Selling,* giving away or letting of the execution of the library is prohibited.* The library can be distributed as part of your applications and libraries* for execution provided this comment remains unchanged.** Restrictions* Only to be distributed with programs that add significant and primary* functionality to the library. Not to be distributed with additional* software intended to replace any components of the library.** Trademarks* Jekejeke is a registered trademark of XLOG Technologies AG.*/:-(ensure_loaded(library(/(tester, runner)))).:-(multifile(/(result_summary, 2))).:-(dynamic(/(result_summary, 2))).:-(multifile(/(result_suite, 3))).:-(dynamic(/(result_suite, 3))).:-(multifile(/(result_tests, 4))).:-(dynamic(/(result_tests, 4))).:-(multifile(/(result_pred, 6))).:-(dynamic(/(result_pred, 6))).:-(multifile(/(result, 7))).:-(dynamic(/(result, 7))).:-(diagnose_online(Tags), ','(sys_list_suites(Tags), ','(write('Folder: '), ','(flush_output, ','(read(E), ','(once(runner_folder(E, _)), ','(sys_list_tests(E, Tags), ','(write('File: '), ','(flush_output, ','(read(D), ','(once(runner_file(E, D, _)), ','(sys_list_pred(E, D, Tags), ','(write('Predicate: '), ','(flush_output, ','(read(/(F, N)), ','(once(runner_pred(F, N, E, D, _)), ','(sys_list_result(F, N, E, D, Tags), !))))))))))))))))).diagnose_online(_).:-(sys_list_suites(Tags), ','(;(','(member(Tag, Tags), ','(write(Tag), ','(write('\t'), fail))), true), ','(write('Folder'), ','(nl, ','(runner_folder(E, _), ','(;(','(member(Tag, Tags), ','(result_suite(E, Tag, Z), ','(sys_list_data(Z), fail))), true), ','(write(E), ','(nl, fail)))))))).:-(sys_list_suites(Tags), ','(;(','(member(Tag, Tags), ','(result_summary(Tag, Z), ','(sys_list_data(Z), fail))), true), ','(write('Total'), nl))).:-(sys_list_tests(E, Tags), ','(;(','(member(Tag, Tags), ','(write(Tag), ','(write('\t'), fail))), true), ','(write('File'), ','(nl, ','(runner_file(E, D, _), ','(;(','(member(Tag, Tags), ','(result_tests(E, D, Tag, Z), ','(sys_list_data(Z), fail))), true), ','(write(D), ','(nl, fail)))))))).:-(sys_list_tests(E, Tags), ','(;(','(member(Tag, Tags), ','(result_suite(E, Tag, Z), ','(sys_list_data(Z), fail))), true), ','(write('Total'), nl))).:-(sys_list_pred(E, D, Tags), ','(;(','(member(Tag, Tags), ','(write(Tag), ','(write('\t'), fail))), true), ','(write('Predicate'), ','(nl, ','(runner_pred(F, N, E, D, _), ','(;(','(member(Tag, Tags), ','(result_pred(F, N, E, D, Tag, Z), ','(sys_list_data(Z), fail))), true), ','(write(F), ','(write(/), ','(write(N), ','(nl, fail)))))))))).:-(sys_list_pred(E, D, Tags), ','(;(','(member(Tag, Tags), ','(result_tests(E, D, Tag, Z), ','(sys_list_data(Z), fail))), true), ','(write('Total'), nl))).:-(sys_list_result(F, N, E, D, Tags), ','(;(','(member(Tag, Tags), ','(write(Tag), ','(write('\t'), fail))), true), ','(write('Case'), ','(nl, ','(clause(runner_case(F, N, E, D, C), _), ','(;(','(member(Tag, Tags), ','(result(F, N, E, D, C, Tag, Z), ','(sys_list_data(Z), fail))), true), ','(write(C), ','(nl, fail)))))))).:-(sys_list_result(F, N, E, D, Tags), ','(;(','(member(Tag, Tags), ','(result_pred(F, N, E, D, Tag, Z), ','(sys_list_data(Z), fail))), true), ','(write('Total'), nl))).:-(sys_list_data(-(A, B)), ','(!, ','(write(A), ','(write(' '), ','(write(B), write('\t')))))).:-(sys_list_data(A), ','(write(A), write('\t'))).