#[cfg(test)]
use jimtcl::{Interp, JimObject, JimResult};
#[cfg(test)]
fn test_sum<'jim>(_interp: &'jim Interp, args: &[JimObject<'jim>]) -> JimResult<i64> {
let mut total = 0i64;
for arg in &args[1..] {
let v = i64::try_from(arg)?;
total += v;
}
Ok(total)
}
#[test]
fn test_call_sum() -> JimResult<()> {
let interp = Interp::new()?;
interp.add_command("sum", test_sum)?;
let rv = interp.eval("sum 5 2 100")?;
let sum = i64::try_from(&rv)?;
assert_eq!(sum, 107);
Ok(())
}