mirror of
https://github.com/Kovah/LinkAce.git
synced 2025-03-20 06:39:38 +01:00
Adjust tests and order validation in controllers
This commit is contained in:
parent
e461d3c2c2
commit
836ca153b8
@ -16,20 +16,9 @@ class LinkController extends Controller
|
||||
{
|
||||
use ChecksOrdering;
|
||||
|
||||
protected array $allowedOrders = [
|
||||
'url',
|
||||
'title',
|
||||
'description',
|
||||
'visibility',
|
||||
'status',
|
||||
'check_disabled',
|
||||
'created_at',
|
||||
'updated_at',
|
||||
];
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->allowedOrders = Link::$allowOrderBy;
|
||||
$this->allowedOrderBy = Link::$allowOrderBy;
|
||||
$this->authorizeResource(Link::class, 'link');
|
||||
}
|
||||
|
||||
|
@ -28,6 +28,7 @@ class FetchController extends Controller
|
||||
}
|
||||
|
||||
$tags = Tag::query()
|
||||
->visibleForUser()
|
||||
->where('name', 'like', '%' . escapeSearchQuery($query) . '%')
|
||||
->oldest('name')
|
||||
->get();
|
||||
@ -58,6 +59,7 @@ class FetchController extends Controller
|
||||
}
|
||||
|
||||
$tags = LinkList::query()
|
||||
->visibleForUser()
|
||||
->where('name', 'like', '%' . escapeSearchQuery($query) . '%')
|
||||
->oldest('name')
|
||||
->get();
|
||||
@ -89,6 +91,7 @@ class FetchController extends Controller
|
||||
}
|
||||
|
||||
$link = Link::query()
|
||||
->visibleForUser()
|
||||
->where('url', trim($query))
|
||||
->where('id', '!=', $request->input('ignore_id', 0))
|
||||
->first();
|
||||
|
@ -19,14 +19,9 @@ class LinkController extends Controller
|
||||
{
|
||||
use ChecksOrdering;
|
||||
|
||||
protected array $allowedOrders = [
|
||||
'created_at',
|
||||
'url',
|
||||
'title',
|
||||
];
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->allowedOrderBy = Link::$allowOrderBy;
|
||||
$this->authorizeResource(Link::class, 'link');
|
||||
}
|
||||
|
||||
@ -94,7 +89,7 @@ class LinkController extends Controller
|
||||
foreach ($duplicates as $duplicateLink) {
|
||||
$msg .= sprintf(
|
||||
' <a href="%s">%s</a>,',
|
||||
route('links.show', [$duplicateLink->id]),
|
||||
route('links.show', ['link' => $duplicateLink]),
|
||||
$duplicateLink->shortUrl()
|
||||
);
|
||||
}
|
||||
|
@ -17,14 +17,9 @@ class ListController extends Controller
|
||||
{
|
||||
use ChecksOrdering;
|
||||
|
||||
protected array $allowedOrders = [
|
||||
'created_at',
|
||||
'name',
|
||||
'links_count',
|
||||
];
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->allowedOrderBy = LinkList::$allowOrderBy;
|
||||
$this->authorizeResource(LinkList::class, 'list');
|
||||
}
|
||||
|
||||
|
@ -6,6 +6,7 @@ use App\Http\Controllers\Controller;
|
||||
use App\Http\Controllers\Traits\ChecksOrdering;
|
||||
use App\Http\Requests\Models\TagStoreRequest;
|
||||
use App\Http\Requests\Models\TagUpdateRequest;
|
||||
use App\Models\Link;
|
||||
use App\Models\Tag;
|
||||
use App\Repositories\TagRepository;
|
||||
use Exception;
|
||||
@ -97,7 +98,7 @@ class TagController extends Controller
|
||||
*/
|
||||
public function show(Request $request, Tag $tag): View
|
||||
{
|
||||
$this->allowedOrderBy = Tag::$allowOrderBy;
|
||||
$this->allowedOrderBy = Link::$allowOrderBy;
|
||||
$this->orderBy = $request->input('orderBy', 'created_at');
|
||||
$this->orderDir = $request->input('orderDir', 'desc');
|
||||
|
||||
|
@ -7,7 +7,6 @@ use App\Audits\Modifiers\LinkStatusModifier;
|
||||
use App\Audits\Modifiers\ListRelationModifier;
|
||||
use App\Audits\Modifiers\TagRelationModifier;
|
||||
use App\Audits\Modifiers\VisibilityModifier;
|
||||
use App\Enums\ModelAttribute;
|
||||
use App\Jobs\SaveLinkToWaybackmachine;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Database\Eloquent\Collection;
|
||||
|
@ -32,7 +32,7 @@ class LinkControllerTest extends TestCase
|
||||
'</head></html>';
|
||||
|
||||
Http::fake([
|
||||
'example.com' => Http::response($testHtml),
|
||||
'*' => Http::response($testHtml),
|
||||
]);
|
||||
|
||||
Queue::fake();
|
||||
@ -109,6 +109,28 @@ class LinkControllerTest extends TestCase
|
||||
$flashMessages->contains('message', trans('link.duplicates_found'));
|
||||
}
|
||||
|
||||
public function testStoreRequestWithExistingPrivateLink(): void
|
||||
{
|
||||
Link::factory()->create(['url' => 'https://existing-private-link.com', 'user_id' => 2, 'visibility' => 3]);
|
||||
|
||||
$this->post('links', [
|
||||
'url' => 'https://existing-private-link.com',
|
||||
'visibility' => 1,
|
||||
])->assertRedirect('links/2');
|
||||
|
||||
$this->assertDatabaseHas('links', [
|
||||
'url' => 'https://existing-private-link.com',
|
||||
'user_id' => 2,
|
||||
'visibility' => 3,
|
||||
]);
|
||||
|
||||
$this->assertDatabaseHas('links', [
|
||||
'url' => 'https://existing-private-link.com',
|
||||
'user_id' => 1,
|
||||
'visibility' => 1,
|
||||
]);
|
||||
}
|
||||
|
||||
public function testStoreRequestWithBrokenUrl(): void
|
||||
{
|
||||
Http::fake([
|
||||
|
Loading…
x
Reference in New Issue
Block a user