mirror of
https://github.com/snipe/snipe-it.git
synced 2025-01-23 19:59:18 -08:00
Add scenario
This commit is contained in:
parent
8ca882d1c8
commit
c7fa2c04ad
|
@ -823,7 +823,6 @@ class AssetsController extends Controller
|
|||
// This item is checked out to a location
|
||||
if (request('checkout_to_type') == 'location') {
|
||||
$target = Location::find(request('assigned_location'));
|
||||
// @todo: test the setting of ''
|
||||
$asset->location_id = ($target) ? $target->id : '';
|
||||
$error_payload['target_id'] = $request->input('assigned_location');
|
||||
$error_payload['target_type'] = 'location';
|
||||
|
@ -836,10 +835,8 @@ class AssetsController extends Controller
|
|||
$error_payload['target_type'] = 'asset';
|
||||
|
||||
} elseif (request('checkout_to_type') == 'user') {
|
||||
// @todo: test this code path
|
||||
// Fetch the target and set the asset's new location_id
|
||||
$target = User::find(request('assigned_user'));
|
||||
// @todo: test if this is needed or already handled in checkOut method
|
||||
$asset->location_id = (($target) && (isset($target->location_id))) ? $target->location_id : '';
|
||||
$error_payload['target_id'] = $request->input('assigned_user');
|
||||
$error_payload['target_type'] = 'user';
|
||||
|
|
|
@ -85,6 +85,18 @@ class AssetCheckoutTest extends TestCase
|
|||
public function checkoutTargets(): array
|
||||
{
|
||||
return [
|
||||
'Checkout to User without location set' => [
|
||||
function () {
|
||||
$userLocation = Location::factory()->create();
|
||||
$user = User::factory()->for($userLocation)->create(['location_id' => null]);
|
||||
|
||||
return [
|
||||
'checkout_type' => 'user',
|
||||
'target' => $user,
|
||||
'expected_location' => null,
|
||||
];
|
||||
}
|
||||
],
|
||||
'Checkout to User' => [
|
||||
function () {
|
||||
$userLocation = Location::factory()->create();
|
||||
|
|
Loading…
Reference in a new issue