Implement test
This commit is contained in:
@@ -1298,11 +1298,12 @@ class AssetsController extends Controller
|
||||
'assigned_type' => Asset::class,
|
||||
]);
|
||||
|
||||
// @todo: offset
|
||||
// @todo: limit
|
||||
|
||||
$total = $query->count();
|
||||
$assets = $query->get();
|
||||
|
||||
$offset = ($request->input('offset') > $total) ? $total : app('api_offset_value');
|
||||
$limit = app('api_limit_value');
|
||||
|
||||
$assets = $query->skip($offset)->take($limit)->get();
|
||||
|
||||
return (new AssetsTransformer)->transformAssets($assets, $total);
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ class AssignedAssetsTest extends TestCase
|
||||
public function test_requires_permission()
|
||||
{
|
||||
$this->actingAsForApi(User::factory()->create())
|
||||
->getJson(route('api.assets.assigned_assets' , Asset::factory()->create()))
|
||||
->getJson(route('api.assets.assigned_assets', Asset::factory()->create()))
|
||||
->assertForbidden();
|
||||
}
|
||||
|
||||
@@ -50,4 +50,24 @@ class AssignedAssetsTest extends TestCase
|
||||
->assertResponseContainsInRows($assetsAssignedToAsset, 'serial')
|
||||
->assertResponseDoesNotContainInRows($unassociatedAsset, 'serial');
|
||||
}
|
||||
|
||||
public function test_adheres_to_offset_and_limit()
|
||||
{
|
||||
$asset = Asset::factory()->hasAssignedAssets(2)->create();
|
||||
|
||||
$assetsAssignedToAsset = Asset::where([
|
||||
'assigned_to' => $asset->id,
|
||||
'assigned_type' => Asset::class,
|
||||
])->get();
|
||||
|
||||
$this->actingAsForApi(User::factory()->viewAssets()->create())
|
||||
->getJson(route('api.assets.assigned_assets', [
|
||||
'asset' => $asset,
|
||||
'offset' => 1,
|
||||
'limit' => 1,
|
||||
]))
|
||||
->assertOk()
|
||||
->assertResponseDoesNotContainInRows($assetsAssignedToAsset->first(), 'serial')
|
||||
->assertResponseContainsInRows($assetsAssignedToAsset->last(), 'serial');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user