create(2000, 1200)->toJpeg(quality: 90); $path = 'content/abc123.jpg'; Storage::disk('public')->put($path, (string) $original); ResponsiveImage::generate($path, 'public'); Storage::disk('public')->assertExists('content/abc123-480.jpg'); Storage::disk('public')->assertExists('content/abc123-960.jpg'); Storage::disk('public')->assertExists('content/abc123-1440.jpg'); $variant480 = (new ImageManager(new Driver))->read(Storage::disk('public')->path('content/abc123-480.jpg')); $this->assertSame(480, $variant480->width()); ResponsiveImage::delete($path, 'public'); Storage::disk('public')->assertMissing($path); Storage::disk('public')->assertMissing('content/abc123-480.jpg'); Storage::disk('public')->assertMissing('content/abc123-960.jpg'); Storage::disk('public')->assertMissing('content/abc123-1440.jpg'); } public function test_replace_deletes_previous_variants_and_generates_for_new_original(): void { Storage::fake('public'); $manager = new ImageManager(new Driver); Storage::disk('public')->put('content/old.jpg', (string) $manager->create(1600, 900)->toJpeg()); ResponsiveImage::generate('content/old.jpg', 'public'); Storage::disk('public')->put('content/new.jpg', (string) $manager->create(1800, 1000)->toJpeg()); ResponsiveImage::replace('content/old.jpg', 'content/new.jpg', 'public'); Storage::disk('public')->assertMissing('content/old.jpg'); Storage::disk('public')->assertMissing('content/old-480.jpg'); Storage::disk('public')->assertExists('content/new.jpg'); Storage::disk('public')->assertExists('content/new-480.jpg'); Storage::disk('public')->assertExists('content/new-960.jpg'); Storage::disk('public')->assertExists('content/new-1440.jpg'); } }