Как узнать, верен ли то, что возвращает индекс? - PullRequest
0 голосов
/ 04 августа 2020

В настоящее время у меня есть эта простая функция, чтобы узнать, получаю ли я доступ к контроллеру index ().

На моем контроллере

public function index(Request $request)
{
        
    $sortOption = $request->input('sortDesc') == 'true' ? 'desc' : 'asc';
    $sortField = $request->input('sortBy') == 'null' ? 'name' : $request->input('sortBy');

    if (($request->input('filter') != 'null' && $request->input('sortBy') != 'null') ||
        ($request->input('filter') != 'null' && $request->input('sortBy') == 'null')) {
        $carriers = MyModel::orWhere('name', 'like', '%' . $request->input('filter') . '%')
        ->orWhere('email', 'like', '%' . $request->input('filter') . '%')
        ->orderBy($sortField, $sortOption)->orderBy('id', 'desc')
        ->paginate($request->input('size'));
    }

    if ($request->input('filter') == 'null' && $request->input('sortBy') != 'null') {
        $carriers = MyModel::orderBy($sortField, $sortOption)
        ->orderBy('id', 'desc')
        ->paginate($request->input('size'));
    }

    if ($request->input('filter') == 'null' && $request->input('sortBy') == 'null') {
        $carriers = MyModel::orderBy('status', 'desc')->orderBy('id', 'desc')
        ->paginate($request->input('size'));
    }

    return response()->json($carriers);
    
}

и маршрут

Route::resource('/route/controllerRoute', 'MyController')->middleware('checkPermission:permission_index');

и мой тест:

public function testGetListOfExcessCarriers(){
   $response = $this->call('POST', 'controllerRoute.index', array(
        'shortBy'=>'asc',
        'filter'=>'xyz'
        ));
   $response->assertStatus(200);

}

Результат, который я получаю: введите описание изображения здесь

Как я могу увидеть ответ, полученный от этого запроса к индексу?

У меня также есть эта другая проблема: потому что бывает, что я тестирую этот маршрут, но я добавляю маршрут, который не существует, как вы увидите там, однако результат успешный. Что это может быть?

 $this->call('GET', 'eASDÑLKQWQ!!!', array(
        'sortBy'=>'asc',
        'sortDesc'=>true,
        'filter'=>''
        ))
        ->assertSuccessful();

1 Ответ

1 голос
/ 04 августа 2020

Посмотрите эту документацию .

Например, вы можете утверждать, что видите в ответе определенный текст:

$response->assertSeeText($value);

Или что ответ содержит определенное значение json:

$response->assertJson(array $data, $strict = false);

Если вы хотите увидеть содержимое ответа, для отладки ваших утверждений вы можете использовать:

$response->dump();

Как указано в документации здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...