39 lines
741 B
OCaml
39 lines
741 B
OCaml
open Logical_plan
|
|
|
|
let logical_plan_testable =
|
|
let pp_format fmt plan =
|
|
Format.fprintf fmt "%s" (Logical_plan.pp_logical_plan plan)
|
|
in
|
|
Alcotest.testable pp_format (=)
|
|
|
|
|
|
let test_simple_select () =
|
|
let ast1 =
|
|
Ast.Select(
|
|
[
|
|
Ast.Column(
|
|
Ast.StringLiteral("string"),
|
|
None
|
|
)
|
|
],
|
|
Ast.TableExpression(
|
|
None,
|
|
None,
|
|
None
|
|
)
|
|
)
|
|
in
|
|
let plan1 = ast_to_logical ast1 in
|
|
let plan2 =
|
|
Project(None, ["string"])
|
|
in
|
|
Alcotest.(check logical_plan_testable) "ok" plan1 plan2
|
|
|
|
let simple_select_set = [ ("Equals", `Quick, test_simple_select) ]
|
|
|
|
let () =
|
|
Alcotest.run "Logical plan tests"
|
|
[
|
|
("Simple Selects", simple_select_set)
|
|
]
|