/**
  * @dataProvider diffDataProvider
  */
 public function testCanDoDifferenceOperation($a, $b, $c)
 {
     $difOperation = new DifOperation();
     $calculator = new Calculator();
     $num1 = $a;
     $num2 = $b;
     $result = $calculator->calculate($difOperation, $num1, $num2);
     $this->assertEquals($c, $result);
 }
 public function calculateAction()
 {
     $num1 = (double) $this->params()->fromPost('num1');
     $num2 = (double) $this->params()->fromPost('num2');
     $simbolo = $this->params()->fromPost('operazione');
     if (!$simbolo) {
         return new JsonModel(['result' => 0]);
     }
     $calcolo = new Calculator();
     $result = $calcolo->calculate(CalculateMap::map($simbolo), $num1, $num2);
     return new JsonModel(['result' => $result]);
 }