From 7c3820590e88c12b92ec791b94dde6f8b8f878f3 Mon Sep 17 00:00:00 2001 From: Matthew Pope Date: Thu, 21 Nov 2024 15:08:06 -0800 Subject: [PATCH] Improve sum test cases --- conformance/system_macros/sum.ion | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/conformance/system_macros/sum.ion b/conformance/system_macros/sum.ion index 085e53e..68e0b00 100644 --- a/conformance/system_macros/sum.ion +++ b/conformance/system_macros/sum.ion @@ -17,7 +17,7 @@ (produces 0))) (ion_1_1 "sum produces a single, unannotated integer that is the sum of" - (each "two integers" + (each "integers" (text "(:sum -1 4)") (text "(:sum 0 3)") (text "(:sum 1 2)") @@ -28,12 +28,13 @@ (text "(:sum a::1 2)") (text "(:sum 1 b::2)") (text "(:sum a::1 b::2)") - // Values that produce an integer + "expressions that produce integers" (text "(:sum (:values 1) 2)") (text "(:sum 1 (:values 2))") - // ...including other sums + "other sums" (text "(:sum (:sum 1 1) 1)") (text "(:sum 1 (:sum 1 1))") + (text "(:sum (:sum -4 3) (:sum 2 2))") (produces 3))) (ion_1_1 "sum is commutative" @@ -45,7 +46,12 @@ (each (text "(:sum -2 4)") (text "(:sum 4 -2)") (produces 2))) (ion_1_1 "arguments may not be" - (each "any null" + (each "less than two integers" + (text "(:sum)") + (text "(:sum 1)") + "more than two integers" + (text "(:sum 1 2 3)") + "any null" (text "(:sum 1 null)") (text "(:sum 1 null.int)") (text "(:sum 1 null.float)") @@ -73,4 +79,6 @@ (text '''(:sum 1 '3')''') (text '''(:sum "3" 2)''') (text '''(:sum '3' 2)''') + "a single expression that produces two integers" + (text "(:sum (:values 1 3))") (signals "invalid argument")))