KCL: Better message on assertEqual function (#3898)
Also add a new no-visual test for performance testing.
This commit is contained in:
@ -79,7 +79,14 @@ pub async fn assert_gt(args: Args) -> Result<KclValue, KclError> {
|
||||
name = "assertEqual",
|
||||
}]
|
||||
async fn inner_assert_equal(left: f64, right: f64, epsilon: f64, message: &str, args: &Args) -> Result<(), KclError> {
|
||||
_assert((right - left).abs() < epsilon, message, args).await
|
||||
if (right - left).abs() < epsilon {
|
||||
Ok(())
|
||||
} else {
|
||||
Err(KclError::Type(KclErrorDetails {
|
||||
message: format!("assert failed because {left} != {right}: {message}"),
|
||||
source_ranges: vec![args.source_range],
|
||||
}))
|
||||
}
|
||||
}
|
||||
|
||||
pub async fn assert_equal(args: Args) -> Result<KclValue, KclError> {
|
||||
|
107
src/wasm-lib/tests/executor/inputs/no_visuals/add_lots.kcl
Normal file
107
src/wasm-lib/tests/executor/inputs/no_visuals/add_lots.kcl
Normal file
@ -0,0 +1,107 @@
|
||||
fn f = (i) => {
|
||||
return i * 2
|
||||
}
|
||||
|
||||
let x = f(0)
|
||||
+ f(1)
|
||||
+ f(2)
|
||||
+ f(3)
|
||||
+ f(4)
|
||||
+ f(5)
|
||||
+ f(6)
|
||||
+ f(7)
|
||||
+ f(8)
|
||||
+ f(9)
|
||||
+ f(10)
|
||||
+ f(11)
|
||||
+ f(12)
|
||||
+ f(13)
|
||||
+ f(14)
|
||||
+ f(15)
|
||||
+ f(16)
|
||||
+ f(17)
|
||||
+ f(18)
|
||||
+ f(19)
|
||||
+ f(20)
|
||||
+ f(21)
|
||||
+ f(22)
|
||||
+ f(23)
|
||||
+ f(24)
|
||||
+ f(25)
|
||||
+ f(26)
|
||||
+ f(27)
|
||||
+ f(28)
|
||||
+ f(29)
|
||||
+ f(30)
|
||||
+ f(31)
|
||||
+ f(32)
|
||||
+ f(33)
|
||||
+ f(34)
|
||||
+ f(35)
|
||||
+ f(36)
|
||||
+ f(37)
|
||||
+ f(38)
|
||||
+ f(39)
|
||||
+ f(40)
|
||||
+ f(41)
|
||||
+ f(42)
|
||||
+ f(43)
|
||||
+ f(44)
|
||||
+ f(45)
|
||||
+ f(46)
|
||||
+ f(47)
|
||||
+ f(48)
|
||||
+ f(49)
|
||||
+ f(50)
|
||||
+ f(51)
|
||||
+ f(52)
|
||||
+ f(53)
|
||||
+ f(54)
|
||||
+ f(55)
|
||||
+ f(56)
|
||||
+ f(57)
|
||||
+ f(58)
|
||||
+ f(59)
|
||||
+ f(60)
|
||||
+ f(61)
|
||||
+ f(62)
|
||||
+ f(63)
|
||||
+ f(64)
|
||||
+ f(65)
|
||||
+ f(66)
|
||||
+ f(67)
|
||||
+ f(68)
|
||||
+ f(69)
|
||||
+ f(70)
|
||||
+ f(71)
|
||||
+ f(72)
|
||||
+ f(73)
|
||||
+ f(74)
|
||||
+ f(75)
|
||||
+ f(76)
|
||||
+ f(77)
|
||||
+ f(78)
|
||||
+ f(79)
|
||||
+ f(80)
|
||||
+ f(81)
|
||||
+ f(82)
|
||||
+ f(83)
|
||||
+ f(84)
|
||||
+ f(85)
|
||||
+ f(86)
|
||||
+ f(87)
|
||||
+ f(88)
|
||||
+ f(89)
|
||||
+ f(90)
|
||||
+ f(91)
|
||||
+ f(92)
|
||||
+ f(93)
|
||||
+ f(94)
|
||||
+ f(95)
|
||||
+ f(96)
|
||||
+ f(97)
|
||||
+ f(98)
|
||||
+ f(99)
|
||||
+ f(100)
|
||||
|
||||
assertEqual(x, 10100, 0.1, "Big sum")
|
@ -86,3 +86,4 @@ gen_test_fail!(
|
||||
"undefined value: Property 'age' not found in object"
|
||||
);
|
||||
gen_test!(sketch_group_in_object);
|
||||
gen_test!(add_lots);
|
||||
|
Reference in New Issue
Block a user