Fix unit tests.

This commit is contained in:
James Cole 2018-07-05 19:39:17 +02:00
parent 146c9fd947
commit c0d2cd8962
3 changed files with 27 additions and 15 deletions

View File

@ -34,11 +34,13 @@ use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Collection;
use InvalidArgumentException;
use League\Fractal\Manager;
use League\Fractal\Pagination\IlluminatePaginatorAdapter;
use League\Fractal\Resource\Collection as FractalCollection;
use League\Fractal\Resource\Item;
use League\Fractal\Serializer\JsonApiSerializer;
use Log;
/**
* Class BudgetLimitController
@ -90,18 +92,27 @@ class BudgetLimitController extends Controller
*/
public function index(Request $request): JsonResponse
{
$manager = new Manager;
$baseUrl = $request->getSchemeAndHttpHost() . '/api/v1';
$manager = new Manager;
$baseUrl = $request->getSchemeAndHttpHost() . '/api/v1';
$start = null;
$end = null;
$budgetId = (int)($request->get('budget_id') ?? 0);
$budget = $this->repository->findNull($budgetId);
$this->parameters->set('budget_id', $budgetId);
$start = Carbon::createFromFormat('Y-m-d', $request->get('start'));
$this->parameters->set('start', $start->format('Y-m-d'));
try {
$start = Carbon::createFromFormat('Y-m-d', $request->get('start'));
$this->parameters->set('start', $start->format('Y-m-d'));
} catch (InvalidArgumentException $e) {
Log::debug(sprintf('Invalid date: %s', $e->getMessage()));
}
$end = Carbon::createFromFormat('Y-m-d', $request->get('end'));
$this->parameters->set('end', $end->format('Y-m-d'));
try {
$end = Carbon::createFromFormat('Y-m-d', $request->get('end'));
$this->parameters->set('end', $end->format('Y-m-d'));
} catch (InvalidArgumentException $e) {
Log::debug(sprintf('Invalid date: %s', $e->getMessage()));
}
$pageSize = (int)app('preferences')->getForUser(auth()->user(), 'listPageSize', 50)->data;

View File

@ -116,15 +116,16 @@ class BudgetLimitControllerTest extends TestCase
// mock calls:
$repository->shouldReceive('setUser')->once();
$repository->shouldReceive('findNull')->andReturn($budget);
$repository->shouldReceive('findNull')->andReturn(null);
$repository->shouldReceive('getAllBudgetLimits')->once()->andReturn($budget->budgetlimits()->get());
// call API
$params = [
'start_date' => '2018-01-01',
'end_date' => '2018-01-31',
'start' => '2018-01-01',
'end' => '2018-01-31',
];
$response = $this->get('/api/v1/budget_limits?' . http_build_query($params));
$uri = '/api/v1/budget_limits?' . http_build_query($params);
$response = $this->get($uri);
$response->assertStatus(200);
$response->assertHeader('Content-Type', 'application/vnd.api+json');
}
@ -149,8 +150,8 @@ class BudgetLimitControllerTest extends TestCase
// call API
$params = [
'budget_id' => $budget->id,
'start_date' => '2018-01-01',
'end_date' => '2018-01-31',
'start' => '2018-01-01',
'end' => '2018-01-31',
];
$response = $this->get('/api/v1/budget_limits?' . http_build_query($params));
$response->assertStatus(200);

View File

@ -44,7 +44,7 @@ class ToAccountIsTest extends TestCase
$transactionCount = $journal->transactions()->count();
$account = $transaction->account;
$count++;
} while ($account === null && $count < 30 && $transactionCount !== 2);
} while ($account === null && $count < 30 && $transactionCount !== 1);
$trigger = ToAccountIs::makeFromStrings($account->name, false);
$result = $trigger->triggered($journal);
@ -64,7 +64,7 @@ class ToAccountIsTest extends TestCase
$transactionCount = $journal->transactions()->count();
$account = $transaction->account;
$count++;
} while ($account === null && $count < 30 && $transactionCount !== 2);
} while ($account === null && $count < 30 && $transactionCount !== 1);
$trigger = ToAccountIs::makeFromStrings('some name' . random_int(1, 234), false);
$result = $trigger->triggered($journal);