Fix tests.

This commit is contained in:
James Cole
2018-07-01 09:27:22 +02:00
parent 0502f2a4a5
commit db149ca6e1
50 changed files with 551 additions and 647 deletions

View File

@@ -27,6 +27,7 @@ namespace Tests\Api\V1\Controllers;
use FireflyIII\Models\Bill;
use FireflyIII\Repositories\Bill\BillRepositoryInterface;
use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Collection;
use Laravel\Passport\Passport;
use Log;
use Tests\TestCase;
@@ -70,8 +71,9 @@ class BillControllerTest extends TestCase
}
/**
* @covers \FireflyIII\Api\V1\Controllers\BillController::__construct
* @covers \FireflyIII\Api\V1\Controllers\BillController::index
* Show all bills
*
* @covers \FireflyIII\Api\V1\Controllers\BillController
*/
public function testIndex(): void
{
@@ -82,8 +84,9 @@ class BillControllerTest extends TestCase
$repository = $this->mock(BillRepositoryInterface::class);
// mock calls:
$repository->shouldReceive('setUser')->once();
$repository->shouldReceive('setUser');
$repository->shouldReceive('getPaginator')->withAnyArgs()->andReturn($paginator)->once();
$repository->shouldReceive('getRulesForBill')->withAnyArgs()->andReturn(new Collection());
// test API
$response = $this->get('/api/v1/bills');
@@ -97,7 +100,9 @@ class BillControllerTest extends TestCase
}
/**
* @covers \FireflyIII\Api\V1\Controllers\BillController::show
* Show one bill
*
* @covers \FireflyIII\Api\V1\Controllers\BillController
*/
public function testShow(): void
{
@@ -106,8 +111,8 @@ class BillControllerTest extends TestCase
$repository = $this->mock(BillRepositoryInterface::class);
// mock calls:
$repository->shouldReceive('setUser')->once();
$repository->shouldReceive('setUser');
$repository->shouldReceive('getRulesForBill')->withAnyArgs()->andReturn(new Collection());
// test API
$response = $this->get('/api/v1/bills/' . $bill->id);
$response->assertStatus(200);
@@ -121,11 +126,9 @@ class BillControllerTest extends TestCase
}
/**
* @covers \FireflyIII\Api\V1\Controllers\BillController::store
* @covers \FireflyIII\Api\V1\Requests\BillRequest::rules
* @covers \FireflyIII\Api\V1\Requests\BillRequest::authorize
* @covers \FireflyIII\Api\V1\Requests\BillRequest::getAll
* @covers \FireflyIII\Api\V1\Requests\BillRequest::withValidator
* Store with minimum amount more than maximum amount
* @covers \FireflyIII\Api\V1\Controllers\BillController
* @covers \FireflyIII\Api\V1\Requests\BillRequest
*/
public function testStoreMinOverMax(): void
{
@@ -167,10 +170,10 @@ class BillControllerTest extends TestCase
}
/**
* @covers \FireflyIII\Api\V1\Controllers\BillController::store
* @covers \FireflyIII\Api\V1\Requests\BillRequest::rules
* @covers \FireflyIII\Api\V1\Requests\BillRequest::authorize
* @covers \FireflyIII\Api\V1\Requests\BillRequest::getAll
* Store a valid bill
*
* @covers \FireflyIII\Api\V1\Controllers\BillController
* @covers \FireflyIII\Api\V1\Requests\BillRequest
*/
public function testStoreValid(): void
{
@@ -179,9 +182,9 @@ class BillControllerTest extends TestCase
$repository = $this->mock(BillRepositoryInterface::class);
// mock calls:
$repository->shouldReceive('setUser')->once();
$repository->shouldReceive('setUser')->times(2);
$repository->shouldReceive('store')->andReturn($bill);
$repository->shouldReceive('getRulesForBill')->withAnyArgs()->andReturn(new Collection());
// data to submit:
$data = [
'name' => 'New bill #' . random_int(1, 1000),
@@ -206,10 +209,10 @@ class BillControllerTest extends TestCase
}
/**
* @covers \FireflyIII\Api\V1\Controllers\BillController::update
* @covers \FireflyIII\Api\V1\Requests\BillRequest::rules
* @covers \FireflyIII\Api\V1\Requests\BillRequest::authorize
* @covers \FireflyIII\Api\V1\Requests\BillRequest::getAll
* Update a valid bill.
*
* @covers \FireflyIII\Api\V1\Controllers\BillController
* @covers \FireflyIII\Api\V1\Requests\BillRequest
*/
public function testUpdateValid(): void
{
@@ -218,9 +221,9 @@ class BillControllerTest extends TestCase
$repository = $this->mock(BillRepositoryInterface::class);
// mock calls:
$repository->shouldReceive('setUser')->once();
$repository->shouldReceive('setUser')->times(2);
$repository->shouldReceive('update')->andReturn($bill);
$repository->shouldReceive('getRulesForBill')->withAnyArgs()->andReturn(new Collection());
// data to submit:
$data = [
'name' => 'New bill #' . random_int(1, 1000),