X-Git-Url: http://git.nguyen.vg/gitweb/?p=tatoo.git;a=blobdiff_plain;f=src%2Ftest.ml;h=1c0ac393a59f052a24374791c71420dafef257a7;hp=cba40e05eb8fabb3c0cb264f929efffb5615a373;hb=7f20d23e406e81e6e7271d2621cb868d9fe63aae;hpb=a3db3281c936a50107f9e73ec06c3a6171d61dbd diff --git a/src/test.ml b/src/test.ml index cba40e0..1c0ac39 100644 --- a/src/test.ml +++ b/src/test.ml @@ -19,33 +19,41 @@ only the first line of XPath_querie_file is read *) +open Format -let doc = +let doc () = let fd = open_in Sys.argv.(1) in let d = Tree.load_xml_file fd in - close_in fd; d - + close_in fd; + fprintf err_formatter "Parse Tree OK ! "; + d -let query = +let query () = let arg2 = Sys.argv.(2) in if arg2 = "-f" then let fq = open_in Sys.argv.(3) in let q = XPath.parse_file fq in - close_in fq; q - else XPath.parse_string arg2 - -open Format - -let build_asta () = + close_in fq; + fprintf err_formatter "Parse query OK ! "; + q + else let q = XPath.parse_string arg2 in + fprintf err_formatter "Parse query OK ! "; + q + +let build_asta query = let asta = Compil.trans query in - fprintf err_formatter "COMPIL OK\n"; + fprintf err_formatter "Compil OK !\n"; asta let () = - fprintf err_formatter "Query: %a\n%!" XPath.Ast.print query; - fprintf err_formatter "Asta: %a\n%!" Asta.print (build_asta()); - fprintf err_formatter "Document:\n%!"; - Tree.print_xml stderr doc (Tree.root doc); + let query = query () in + let doc = doc () in + let asta = build_asta query in + fprintf err_formatter "@[ ##### Query #####@. %a@]@ " + XPath.Ast.print query; + Asta.print err_formatter asta; + fprintf err_formatter "@[ ##### Doc #####@.%a@]@ " + Tree.print_xml doc (Tree.root doc); exit 0