Files
IronCalc/base/src/test/test_fn_formulatext.rs
Nicolás Hatcher 23814ec18c FIX: Several fixes on the FV function
(1+x)^(1+y) was stringifyfied incorrectly
We still need work on this

FV now returns currency

FV(-1,-2,1) should return #DIV/0! not #NUM!
2024-12-14 22:08:44 +01:00

45 lines
1.1 KiB
Rust

#![allow(clippy::unwrap_used)]
use crate::test::util::new_empty_model;
#[test]
fn wrong_number_of_arguments() {
let mut model = new_empty_model();
model._set("A1", "=FORMULATEXT()");
model._set("A2", "=FORMULATEXT(\"B\",\"A\")");
model.evaluate();
assert_eq!(model._get_text("A1"), *"#ERROR!");
assert_eq!(model._get_text("A2"), *"#ERROR!");
}
#[test]
fn multi_sheet_ref() {
let mut model = new_empty_model();
model.new_sheet();
model._set("A1", "=FORMULATEXT(Sheet1!A1:Sheet2!A1)");
model.evaluate();
assert_eq!(model._get_text("A1"), *"#ERROR!");
}
#[test]
fn implicit_intersection() {
let mut model = new_empty_model();
model._set("A1", "=FORMULATEXT(C1:C2)");
model._set("A2", "=FORMULATEXT(D1:E1)");
model.evaluate();
assert_eq!(model._get_text("A1"), *"#ERROR!");
assert_eq!(model._get_text("A2"), *"#ERROR!");
}
#[test]
fn non_reference() {
let mut model = new_empty_model();
model._set("A1", "=FORMULATEXT(42)");
model.evaluate();
assert_eq!(model._get_text("A1"), *"#ERROR!");
}