withoutMiddleware( ThrottleRequests::class ); $this->faker = \Faker\Factory::create(); Model::reguard(); $this->makeTestData(); $this->withoutExceptionHandling(); } public function testCancelInvoice() { $this->assertTrue($this->invoice->invoiceCancellable($this->invoice)); $client_balance = $this->client->balance; $invoice_balance = $this->invoice->balance; $this->assertEquals(Invoice::STATUS_SENT, $this->invoice->status_id); $this->invoice->fresh()->service()->handleCancellation()->save(); $this->assertEquals(0, $this->invoice->fresh()->balance); $this->assertEquals($this->client->fresh()->balance, ($client_balance - $invoice_balance)); $this->assertNotEquals($client_balance, $this->client->fresh()->balance); $this->assertEquals(Invoice::STATUS_CANCELLED, $this->invoice->fresh()->status_id); } }