#php #laravel #visual-studio-code
#php #ларавель #visual-studio-код
Вопрос:
Я делаю некоторые попытки в своем api-вызове, и я написал эту функцию getPackagesWithChecksumPopUpFromGivenPackageId
, и я хочу написать правильный тестовый сервис (я позвонил ChecksumPackageService.php
). Этот тест службы должен видеть содержимое моей таблицы из моей базы данных. Я пытаюсь, и моя тестовая функция также неверна.
Я хочу знать, могу ли я написать его с помощью запроса и поместить в свою тестовую функцию. Если это возможно, может ли кто-нибудь дать правильную тестовую функцию и сказать мне, будет ли она работать с моим dd(сбрасывать и умирать)?
Ниже моя getPackagesWithChecksumPopUpFromGivenPackageId
и тестовая функция.
Спасибо за вашу помощь
/** * @param $packageId * * @return array */ public function getPackagesWithChecksumPopUpFromGivenPackageId(int $packageId): array { $responseArray = []; try { $package = $this-gt;esPackageView-gt;where('id', $packageId)-gt;get()-gt;toArray(); dd($package); if (count($package) gt;= 1) { $checksum = $package[0]['checksum']; $checksumData = $this-gt;checksumPackage-gt;where('package_view') -gt;with('package') -gt;get() -gt;toArray(); return $this-gt;arrayFunctionService-gt;arraySortBy($responseArray, 'equal_usecase', 'asc'); } else { return $responseArray; } } catch (Exception $exception) { log::error('Error in ChecksumPackageService in function getAllPackagesWithChecksumFromGivenPackageId in line: ' . $exception-gt;getLine() . ' in file: ' . $exception-gt;getFile() . ' with message: ' . $exception-gt;getMessage()); return $responseArray; } }
тест-функция
public function testPackageView() { $testData = [ 'id' =gt; '', 'checksum' =gt; '', 'title' =gt; '', 'ecs_package_id' =gt; '', 'file_count' =gt; '', ]; $this-gt;assertDatabaseHas($table, array $data); $checkSum = $this-gt;checksumService-gt;generateSha1fromString($stripedText); $this-gt;response = $this-gt;checksumService-gt;parseHexToDec($checkSum); $this-gt;assertEquals(, $this-gt;reponse,); }