public void TestRecalcId()
{
XSSFWorkbook wb = new XSSFWorkbook();
Assert.IsFalse(wb.GetForceFormulaRecalculation());
CT_Workbook ctWorkbook = wb.GetCTWorkbook();
Assert.IsFalse(ctWorkbook.IsSetCalcPr());
wb.SetForceFormulaRecalculation(true); // resets the EngineId flag to zero
CT_CalcPr calcPr = ctWorkbook.calcPr;
Assert.IsNotNull(calcPr);
Assert.AreEqual(0, (int)calcPr.calcId);
calcPr.calcId = 100;
Assert.IsTrue(wb.GetForceFormulaRecalculation());
wb.SetForceFormulaRecalculation(true); // resets the EngineId flag to zero
Assert.AreEqual(0, (int)calcPr.calcId);
Assert.IsFalse(wb.GetForceFormulaRecalculation());
// calcMode="manual" is unset when forceFormulaRecalculation=true
calcPr.calcMode = (ST_CalcMode.manual);
wb.SetForceFormulaRecalculation(true);
Assert.AreEqual(ST_CalcMode.auto, calcPr.calcMode);
}