Save workspace changes
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
|
||||
use App\Models\Artwork;
|
||||
use App\Services\ArtworkService;
|
||||
use Illuminate\Pagination\LengthAwarePaginator;
|
||||
|
||||
beforeEach(function () {
|
||||
$this->artworksMock = Mockery::mock(ArtworkService::class);
|
||||
$this->artworksMock->shouldReceive('getFeaturedArtworks')
|
||||
->andReturn(new LengthAwarePaginator(collect(), 0, 20, 1))
|
||||
->byDefault();
|
||||
$this->artworksMock->shouldReceive('getLatestArtworks')
|
||||
->andReturn(collect())
|
||||
->byDefault();
|
||||
$this->app->instance(ArtworkService::class, $this->artworksMock);
|
||||
});
|
||||
|
||||
it('GET /discover/rising returns 200', function () {
|
||||
$this->get('/discover/rising')
|
||||
->assertStatus(200);
|
||||
});
|
||||
|
||||
it('/discover/rising page contains Rising Now heading', function () {
|
||||
$this->get('/discover/rising')
|
||||
->assertStatus(200)
|
||||
->assertSee('Rising Now', false);
|
||||
});
|
||||
|
||||
it('/discover/rising page includes the rising section pill as active', function () {
|
||||
$this->get('/discover/rising')
|
||||
->assertStatus(200)
|
||||
->assertSee('bg-sky-600', false);
|
||||
});
|
||||
|
||||
it('GET /discover/trending still returns 200', function () {
|
||||
$this->get('/discover/trending')
|
||||
->assertStatus(200);
|
||||
});
|
||||
|
||||
it('home page still renders with rising section data', function () {
|
||||
$this->get('/')
|
||||
->assertStatus(200);
|
||||
});
|
||||
|
||||
it('uses the low-signal fallback ordering when rising search results have no momentum', function () {
|
||||
$olderArtwork = Artwork::withoutEvents(fn () => Artwork::factory()->create([
|
||||
'title' => 'Older Fallback Artwork',
|
||||
'is_public' => true,
|
||||
'is_approved' => true,
|
||||
'published_at' => now()->subDays(4),
|
||||
'created_at' => now()->subDays(4),
|
||||
]));
|
||||
|
||||
$newerArtwork = Artwork::withoutEvents(fn () => Artwork::factory()->create([
|
||||
'title' => 'Newer Fallback Artwork',
|
||||
'is_public' => true,
|
||||
'is_approved' => true,
|
||||
'published_at' => now()->subHour(),
|
||||
'created_at' => now()->subHour(),
|
||||
]));
|
||||
|
||||
$this->get('/discover/rising')
|
||||
->assertStatus(200)
|
||||
->assertSeeInOrder(['Newer Fallback Artwork', 'Older Fallback Artwork'], false);
|
||||
});
|
||||
Reference in New Issue
Block a user