@@ -1996,6 +1996,41 @@ TEST_CASE("Statistics", "[stats]")
1996
1996
CHECK_THAT (-87 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
1997
1997
p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87)" ));
1998
1998
CHECK_THAT (-87 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
1999
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90)" ));
2000
+ CHECK_THAT (-90 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2001
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99)" ));
2002
+ CHECK_THAT (-99 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2003
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101)" ));
2004
+ CHECK_THAT (-101 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2005
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103)" ));
2006
+ CHECK_THAT (-103 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2007
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111)" ));
2008
+ CHECK_THAT (-111 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2009
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113)" ));
2010
+ CHECK_THAT (-113 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2011
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150)" ));
2012
+ CHECK_THAT (-150 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2013
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150, -175)" ));
2014
+ CHECK_THAT (-175 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2015
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150, -175, -199)" ));
2016
+ CHECK_THAT (-199 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2017
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150, -175, -199, -220)" ));
2018
+ CHECK_THAT (-220 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2019
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150, -175, -199, -220, -222)" ));
2020
+ CHECK_THAT (-222 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2021
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150, -175, -199, -220, -222, -233)" ));
2022
+ CHECK_THAT (-233 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2023
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150, -175, -199, -220, -222, -233, -245)" ));
2024
+ CHECK_THAT (-245 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2025
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150, -175, -199, -220, -222, -233, -245, -255)" ));
2026
+ CHECK_THAT (-255 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2027
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150, -175, -199, -220, -222, -233, -245, -255, -300)" ));
2028
+ CHECK_THAT (-300 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2029
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150, -175, -199, -220, -222, -233, -245, -255, -300, -320)" ));
2030
+ CHECK_THAT (-320 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2031
+ p.compile ((" MIN(-9, 2, 0, -5.8, 9, 8, -87, -90, -99, -101, -103, -111, -113, -150, -175, -199, -220, -222, -233, -245, -255, -300, -320, -450)" ));
2032
+ CHECK_THAT (-450 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2033
+
1999
2034
p.compile ((" MAX(1.1)" ));
2000
2035
CHECK_THAT (1.1 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2001
2036
p.compile ((" MAX(1.1, 1.2)" ));
@@ -2018,6 +2053,40 @@ TEST_CASE("Statistics", "[stats]")
2018
2053
CHECK_THAT (127 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2019
2054
p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127)" ));
2020
2055
CHECK_THAT (127 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2056
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156)" ));
2057
+ CHECK_THAT (156 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2058
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201)" ));
2059
+ CHECK_THAT (201 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2060
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207)" ));
2061
+ CHECK_THAT (207 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2062
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209)" ));
2063
+ CHECK_THAT (209 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2064
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226)" ));
2065
+ CHECK_THAT (226 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2066
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256)" ));
2067
+ CHECK_THAT (256 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2068
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300)" ));
2069
+ CHECK_THAT (300 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2070
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300, 301)" ));
2071
+ CHECK_THAT (301 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2072
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300, 301, 303)" ));
2073
+ CHECK_THAT (303 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2074
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300, 301, 303, 309)" ));
2075
+ CHECK_THAT (309 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2076
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300, 301, 303, 309, 326)" ));
2077
+ CHECK_THAT (326 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2078
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300, 301, 303, 309, 326, 350)" ));
2079
+ CHECK_THAT (350 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2080
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300, 301, 303, 309, 326, 350, 388)" ));
2081
+ CHECK_THAT (388 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2082
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300, 301, 303, 309, 326, 350, 388, 390)" ));
2083
+ CHECK_THAT (390 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2084
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300, 301, 303, 309, 326, 350, 388, 390, 401)" ));
2085
+ CHECK_THAT (401 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2086
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300, 301, 303, 309, 326, 350, 388, 390, 401, 403)" ));
2087
+ CHECK_THAT (403 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2088
+ p.compile ((" MAX(9.1, 1.2, 0, 5.8, 80, -1, 127, 156, 201, 207, 209, 226, 256, 300, 301, 303, 309, 326, 350, 388, 390, 401, 403, 777)" ));
2089
+ CHECK_THAT (777 , Catch::Matchers::WithinRel (WITHIN_TYPE_CAST (p.evaluate ())));
2021
2090
}
2022
2091
2023
2092
TEST_CASE (" Round higher precision" , " [round]" )
0 commit comments