Files
buzz-sheet/lib/catalog/rarity.test.ts
T
gunshiz b94ce3b640
CI / Verify (push) Successful in 51s
CI / Build immutable images and deploy (push) Successful in 1m34s
fix : use buzz style card
2026-08-30 07:18:07 +00:00

26 lines
1.5 KiB
TypeScript

import { describe, expect, it } from "vitest";
import { rarityGradient, rarityGradientClass, rarityTextClass } from "@/lib/catalog/rarity";
describe("catalog rarity backgrounds", () => {
it("maps every weapon and artifact rarity to its Tailwind gradient", () => {
expect(rarityGradientClass(1)).toContain("rgba(23,25,28,1)");
expect(rarityGradientClass(2)).toContain("rgba(11,43,24,1)");
expect(rarityGradientClass(3)).toBe("bg-[#4D7691] bg-[linear-gradient(90deg,rgba(77,118,145,1)_0%,rgba(71,135,165,1)_100%)]");
expect(rarityGradientClass(4)).toBe("bg-[#6D6A9C] bg-[linear-gradient(90deg,rgba(109,106,156,1)_0%,rgba(150,122,179,1)_100%)]");
expect(rarityGradientClass(5)).toBe("bg-[#A67B34] bg-[linear-gradient(90deg,rgba(166,123,52,1)_0%,rgba(178,123,44,1)_100%)]");
expect(rarityGradient(3)).toBe("linear-gradient(90deg, rgba(77, 118, 145, 1) 0%, rgba(71, 135, 165, 1) 100%)");
expect(rarityGradient(4)).toBe("linear-gradient(90deg, rgba(109, 106, 156, 1) 0%, rgba(150, 122, 179, 1) 100%)");
expect(rarityGradient(5)).toBe("linear-gradient(90deg, rgba(166, 123, 52, 1) 0%, rgba(178, 123, 44, 1) 100%)");
expect(rarityTextClass(3)).toBe("text-[#4D7691]");
expect(rarityTextClass(4)).toBe("text-[#6D6A9C]");
expect(rarityTextClass(5)).toBe("text-[#A67B34]");
});
it("uses the neutral equipment background when rarity is unavailable", () => {
expect(rarityGradient(null)).toBe("#17383d");
expect(rarityGradientClass(undefined)).toBeUndefined();
expect(rarityTextClass(undefined)).toBeUndefined();
});
});