fix(SW-3691): Setup one prettier config for whole repo * Setup prettierrc in root and remove other configs Approved-by: Joakim Jäderberg Approved-by: Linus Flood
70 lines
1.9 KiB
TypeScript
70 lines
1.9 KiB
TypeScript
import { describe, it, expect } from "vitest"
|
|
import { imageLoader } from "./imageLoader"
|
|
describe("imageLoader", () => {
|
|
it("should generate the correct image URL for absolute URLs", () => {
|
|
const loader = imageLoader({ dimensions: { width: 800, height: 600 } })
|
|
const url = loader({
|
|
quality: 80,
|
|
src: "https://example.com/image.jpg",
|
|
width: 800,
|
|
})
|
|
|
|
expect(url).toBe(
|
|
"https://img.scandichotels.com/.netlify/images?url=https://example.com/image.jpg&w=800&q=80"
|
|
)
|
|
})
|
|
|
|
it("should generate the correct image URL for relative URLs", () => {
|
|
const loader = imageLoader({ dimensions: { width: 800, height: 600 } })
|
|
const url = loader({
|
|
quality: 80,
|
|
src: "/image.jpg",
|
|
width: 800,
|
|
})
|
|
|
|
expect(url).toBe("/image.jpg?w=800&q=80")
|
|
})
|
|
|
|
it("should compensate for landscape 3:2 images", () => {
|
|
const loader = imageLoader({ dimensions: { width: 6000, height: 4000 } })
|
|
const url = loader({
|
|
src: "/image.jpg",
|
|
width: 400,
|
|
})
|
|
|
|
expect(url).toBe("/image.jpg?w=600")
|
|
})
|
|
|
|
it("should compensate for landscape ~3:2 images", () => {
|
|
const loader = imageLoader({ dimensions: { width: 7952, height: 5304 } })
|
|
const url = loader({
|
|
src: "/image.jpg",
|
|
width: 400,
|
|
})
|
|
|
|
expect(url).toBe("/image.jpg?w=600")
|
|
})
|
|
|
|
it("should compensate for standing 2:3 images", () => {
|
|
const loader = imageLoader({ dimensions: { width: 4000, height: 6000 } })
|
|
const url = loader({
|
|
src: "/image.jpg",
|
|
width: 800,
|
|
})
|
|
|
|
expect(url).toBe("/image.jpg?w=800")
|
|
})
|
|
|
|
it("should compensate for landscape 2:1 images", () => {
|
|
const loader = imageLoader({ dimensions: { width: 2000, height: 1000 } })
|
|
const url = loader({
|
|
src: "/image.jpg",
|
|
width: 800,
|
|
})
|
|
|
|
// used to fetch an image 800x400 image but we, probably, render it with a height of 533
|
|
|
|
expect(url).toBe("/image.jpg?w=1200")
|
|
})
|
|
})
|