From b4a2485afbf74e99e2147086fbca0568b7e2b7b8 Mon Sep 17 00:00:00 2001 From: Marcos Magueta Date: Sun, 12 Jul 2026 17:55:27 -0300 Subject: relation references as a term kind, written #Name --- test/test_term.ml | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'test/test_term.ml') diff --git a/test/test_term.ml b/test/test_term.ml index 20b2f1a..3601718 100644 --- a/test/test_term.ml +++ b/test/test_term.ml @@ -82,7 +82,17 @@ let test_printing () = Alcotest.(check string) "sequence" "#(1 2 3)" (print (Sol.Term.sequence [ int 1; int 2; int 3 ])); Alcotest.(check string) "record" "{a: 1 b: 2}" - (print (record [ (label "b", int 2); (label "a", int 1) ])) + (print (record [ (label "b", int 2); (label "a", int 1) ])); + Alcotest.(check string) "reference" "#Person" + (print (Result.get_ok (Sol.Term.reference "Person"))) + +let test_reference_validation () = + Alcotest.(check bool) "well-formed" true + (Result.is_ok (Sol.Term.reference "Person")); + Alcotest.(check bool) "empty rejected" false + (Result.is_ok (Sol.Term.reference "")); + Alcotest.(check bool) "leading digit rejected" false + (Result.is_ok (Sol.Term.reference "1st")) let test_label_validation () = let ok s = Result.is_ok (Sol.Label.of_string s) in @@ -122,5 +132,7 @@ let () = [ Alcotest.test_case "printing" `Quick test_printing; Alcotest.test_case "label validation" `Quick test_label_validation; + Alcotest.test_case "reference validation" `Quick + test_reference_validation; ] ); ] -- cgit v1.2.3