/** * @param $file * @param bool|true $withOperatorOperation */ public function setOrderTestProphecy($file, $withOperatorOperation = true) { $this->mirakl->getTransactions(Argument::type('integer'), Argument::is(null), Argument::is(null), Argument::is(null), Argument::is(null), Argument::is(null), Argument::type("string"), Argument::cetera())->will(function ($args) use($file) { $shopId = $args[0]; $paymentVoucher = $args[6]; $array = Mirakl::getOrderTransactions($shopId, $paymentVoucher, $file); return $array; })->shouldBeCalled(); $this->transactionValidator->isValid(Argument::type('array'))->willReturn(true)->shouldBeCalled(); $this->operationManager->create(Argument::type('float'), Argument::type('DateTime'), Argument::type('string'), Argument::type('int'))->will(function ($args) { list($amount, $cycleDate, $paymentVoucher, $miraklId) = $args; return new Operation($amount, $cycleDate, $paymentVoucher, $miraklId); })->shouldBeCalled(); if ($withOperatorOperation) { $this->operationManager->create(Argument::type('float'), Argument::type('DateTime'), Argument::type('string'), Argument::is(null))->will(function ($args) { list($amount, $cycleDate, $paymentVoucher, $miraklId) = $args; return new Operation($amount, $cycleDate, $paymentVoucher, $miraklId); })->shouldBeCalled(); } }