_calculateFormulaValue($formula); $this->assertEquals($expectedResultExcel, $resultExcel, 'should be Excel compatible'); Functions::setCompatibilityMode(Functions::COMPATIBILITY_OPENOFFICE); $resultOpenOffice = Calculation::getInstance()->_calculateFormulaValue($formula); $this->assertEquals($expectedResultOpenOffice, $resultOpenOffice, 'should be OpenOffice compatible'); } public function providerBinaryComparisonOperation() { return require 'data/CalculationBinaryComparisonOperation.php'; } /** * @dataProvider providerGetFunctions * * @param mixed $category * @param mixed $functionCall * @param mixed $argumentCount */ public function testGetFunctions($category, $functionCall, $argumentCount) { $this->assertInternalType('callable', $functionCall); } public function providerGetFunctions() { return Calculation::getInstance()->getFunctions(); } public function testIsImplemented() { $calculation = Calculation::getInstance(); $this->assertFalse($calculation->isImplemented('non-existing-function')); $this->assertFalse($calculation->isImplemented('AREAS')); $this->assertTrue($calculation->isImplemented('coUNt')); $this->assertTrue($calculation->isImplemented('abs')); } }