UNPKG

matisse

Version:

TypeScript library for mutable colour conversion and manipulation 🎨

941 lines • 30.5 kB
import Colour from "../index"; var white; var black; var colour1; var colour2; var colour3; var colour4; var colourA; var colourB; beforeEach(() => { white = new Colour("#FFFFFF"); black = new Colour("#000000"); colour1 = Colour.RGB(247, 185, 12); // #f7b90c colour2 = Colour.RGB(82, 50, 92, 0.5); // #52325c colour3 = Colour.HSV(200, 0.5, 0.7); // #5995b3 colour4 = Colour.HSV(125, 1, 0.33, 0.1); // #005407 colourA = Colour.RGB(6, 16, 125, 0.25); // #06107d colourB = Colour.CMYK(0.00, 1.00, 0.25, 0.50); // #800060 }); test("red white", () => { expect(white.red).toBe(255); }); test("red black", () => { expect(black.red).toBe(0); }); test("red 1", () => { expect(colour1.red).toBe(247); }); test("red 2", () => { expect(colour2.red).toBe(82); }); test("red 3", () => { expect(colour3.red).toBe(89); }); test("red 4", () => { expect(colour4.red).toBe(0); }); test("green white", () => { expect(white.green).toBe(255); }); test("green black", () => { expect(black.green).toBe(0); }); test("green 1", () => { expect(colour1.green).toBe(185); }); test("green 2", () => { expect(colour2.green).toBe(50); }); test("green 3", () => { expect(colour3.green).toBe(149); }); test("green 4", () => { expect(colour4.green).toBe(84); }); test("blue white", () => { expect(white.blue).toBe(255); }); test("blue black", () => { expect(black.blue).toBe(0); }); test("blue 1", () => { expect(colour1.blue).toBe(12); }); test("blue 2", () => { expect(colour2.blue).toBe(92); }); test("blue 3", () => { expect(colour3.blue).toBe(179); }); test("blue 4", () => { expect(colour4.blue).toBe(7); }); test("hue white", () => { expect(white.hue).toBe(0); }); test("hue black", () => { expect(black.hue).toBe(0); }); test("hue 1", () => { expect(colour1.hue).toBe(44); }); test("hue 2", () => { expect(colour2.hue).toBe(286); }); test("hue 3", () => { expect(colour3.hue).toBe(200); }); test("hue 4", () => { expect(colour4.hue).toBe(125); }); test("saturationv white", () => { expect(white.saturationv).toBe(0); }); test("saturationv black", () => { expect(black.saturationv).toBe(0); }); test("saturationv 1", () => { expect(colour1.saturationv).toBe(0.95); }); test("saturationv 2", () => { expect(colour2.saturationv).toBe(0.46); }); test("saturationv 3", () => { expect(colour3.saturationv).toBe(0.50); }); test("saturationv 4", () => { expect(colour4.saturationv).toBe(1); }); test("value white", () => { expect(white.value).toBe(1); }); test("value black", () => { expect(black.value).toBe(0); }); test("value 1", () => { expect(colour1.value).toBe(0.97); }); test("value 2", () => { expect(colour2.value).toBe(0.36); }); test("value 3", () => { expect(colour3.value).toBe(0.70); }); test("value 4", () => { expect(colour4.value).toBe(0.33); }); test("alpha white", () => { expect(white.alpha).toBe(1); }); test("alpha black", () => { expect(black.alpha).toBe(1); }); test("alpha 1", () => { expect(colour1.alpha).toBe(1); }); test("alpha 2", () => { expect(colour2.alpha).toBe(0.5); }); test("alpha 3", () => { expect(colour3.alpha).toBe(1); }); test("alpha 4", () => { expect(colour4.alpha).toBe(0.1); }); test("css constructor rgb 1", () => { const colour = new Colour('rgba(200, 60, 100, 0.3)'); expect(colour.red).toBe(200); expect(colour.green).toBe(60); expect(colour.blue).toBe(100); expect(colour.hue).toBe(343); expect(colour.saturationv).toBe(0.70); expect(colour.value).toBe(0.78); expect(colour.alpha).toBe(0.30); }); test("css constructor rgb 2", () => { const colour = new Colour('rgb(176 176 176)'); expect(colour.red).toBe(176); expect(colour.green).toBe(176); expect(colour.blue).toBe(176); expect(colour.value).toBe(0.69); expect(colour.alpha).toBe(1); }); test("css constructor hsl 1", () => { const colour = new Colour('hsla(360, 60%, 50%, 0.4)'); expect(colour.red).toBe(204); expect(colour.green).toBe(51); expect(colour.blue).toBe(51); expect(colour.hue).toBe(0); expect(colour.saturationl).toBe(0.60); expect(colour.light).toBe(0.50); expect(colour.alpha).toBe(0.40); }); test("css constructor hwb 1", () => { const colour = new Colour('hwb(60, 3%, 60%, 0.6)'); expect(colour.red).toBe(102); expect(colour.green).toBe(102); expect(colour.blue).toBe(7); expect(colour.hue).toBe(60); expect(colour.white).toBe(0.03); expect(colour.black).toBe(0.60); expect(colour.alpha).toBe(0.60); }); test("css constructor hex 1", () => { const colour = new Colour("#3B2B0B"); expect(colour.red).toBe(59); expect(colour.green).toBe(43); expect(colour.blue).toBe(11); expect(colour.hue).toBe(40); expect(colour.saturationv).toBe(0.81); expect(colour.value).toBe(0.23); expect(colour.alpha).toBe(1); }); test("css constructor hex 2", () => { const colour = new Colour('#FFFA'); expect(colour.red).toBe(255); expect(colour.green).toBe(255); expect(colour.blue).toBe(255); expect(colour.value).toBe(1); expect(colour.alpha).toBe(0.67); }); test("css constructor colour names 1", () => { const colour = new Colour("crimson"); expect(colour.red).toBe(220); expect(colour.green).toBe(20); expect(colour.blue).toBe(60); expect(colour.hue).toBe(348); expect(colour.saturationv).toBe(0.91); expect(colour.value).toBe(0.86); expect(colour.alpha).toBe(1); }); test("css constructor colour names 2", () => { const colour = new Colour('black'); expect(colour.red).toBe(0); expect(colour.green).toBe(0); expect(colour.blue).toBe(0); expect(colour.value).toBe(0); expect(colour.alpha).toBe(1); }); test("css constructor invalid", () => { expect(() => new Colour('hello world')).toThrow(); }); test("RGB constructor 1", () => { const colour = Colour.RGB(31, 33, 36, 0.39); expect(colour.red).toBe(31); expect(colour.green).toBe(33); expect(colour.blue).toBe(36); expect(colour.hue).toBe(216); expect(colour.saturationv).toBe(0.14); expect(colour.value).toBe(0.14); expect(colour.alpha).toBe(0.39); }); test("RGB constructor 2", () => { const colour = Colour.RGB(194, 255, 153); expect(colour.red).toBe(194); expect(colour.green).toBe(255); expect(colour.blue).toBe(153); expect(colour.hue).toBe(96); expect(colour.saturationv).toBe(0.40); expect(colour.value).toBe(1); expect(colour.alpha).toBe(1); }); test("RGB constructor 3", () => { const colour = Colour.RGB(255, 5, 0, 0.1); expect(colour.red).toBe(255); expect(colour.green).toBe(5); expect(colour.blue).toBe(0); expect(colour.hue).toBe(1); expect(colour.saturationv).toBe(1); expect(colour.value).toBe(1); expect(colour.alpha).toBe(0.1); }); test("RGB constructor 4", () => { const colour = Colour.RGB(129, 65, 133); expect(colour.red).toBe(129); expect(colour.green).toBe(65); expect(colour.blue).toBe(133); expect(colour.hue).toBe(296); expect(colour.saturationv).toBe(0.51); expect(colour.value).toBe(0.52); expect(colour.alpha).toBe(1); }); test("RGB constructor 5", () => { const colour = Colour.RGB(0, 0, 0, 0); expect(colour.red).toBe(0); expect(colour.green).toBe(0); expect(colour.blue).toBe(0); expect(colour.value).toBe(0); expect(colour.alpha).toBe(0); }); test("HSV constructor 1", () => { const colour = Colour.HSV(243, 1, 1, 0.5); expect(colour.red).toBe(13); expect(colour.green).toBe(0); expect(colour.blue).toBe(255); expect(colour.hue).toBe(243); expect(colour.saturationv).toBe(1); expect(colour.value).toBe(1); expect(colour.alpha).toBe(0.5); }); test("HSV constructor 2", () => { const colour = Colour.HSV(52, 0.96, 0.07); expect(colour.red).toBe(18); expect(colour.green).toBe(16); expect(colour.blue).toBe(1); expect(colour.hue).toBe(52); expect(colour.saturationv).toBe(0.96); expect(colour.value).toBe(0.07); expect(colour.alpha).toBe(1); }); test("HSV constructor 3", () => { const colour = Colour.HSV(100, 0.03, 0.05, 0.08); expect(colour.red).toBe(12); expect(colour.green).toBe(13); expect(colour.blue).toBe(12); expect(colour.hue).toBe(100); expect(colour.saturationv).toBe(0.03); expect(colour.value).toBe(0.05); expect(colour.alpha).toBe(0.08); }); test("HSV constructor 4", () => { const colour = Colour.HSV(237, 0, 1, 0); expect(colour.red).toBe(255); expect(colour.green).toBe(255); expect(colour.blue).toBe(255); expect(colour.hue).toBe(237); expect(colour.saturationv).toBe(0); expect(colour.value).toBe(1); expect(colour.alpha).toBe(0); }); test("HSV constructor 5", () => { const colour = Colour.HSV(0, 1, 0, 0); expect(colour.red).toBe(0); expect(colour.green).toBe(0); expect(colour.blue).toBe(0); expect(colour.hue).toBe(0); expect(colour.saturationv).toBe(1); expect(colour.value).toBe(0); expect(colour.alpha).toBe(0); }); test("red setter A", () => { colourA.red = 69; expect(colourA.red).toBe(69); expect(colourA.green).toBe(16); expect(colourA.blue).toBe(125); expect(colourA.hue).toBe(269); expect(colourA.saturationv).toBe(0.87); expect(colourA.value).toBe(0.49); expect(colourA.alpha).toBe(0.25); }); test("green setter A", () => { colourA.green = 127; expect(colourA.red).toBe(6); expect(colourA.green).toBe(127); expect(colourA.blue).toBe(125); expect(colourA.hue).toBe(179); expect(colourA.saturationv).toBe(0.95); expect(colourA.value).toBe(0.50); expect(colourA.alpha).toBe(0.25); }); test("blue setter A", () => { colourA.blue = 255; expect(colourA.red).toBe(6); expect(colourA.green).toBe(16); expect(colourA.blue).toBe(255); expect(colourA.hue).toBe(238); expect(colourA.saturationv).toBe(0.98); expect(colourA.value).toBe(1); expect(colourA.alpha).toBe(0.25); }); test("hue setter A", () => { colourA.hue = 100; expect(colourA.red).toBe(46); expect(colourA.green).toBe(125); expect(colourA.blue).toBe(6); expect(colourA.hue).toBe(100); expect(colourA.saturationv).toBe(0.95); expect(colourA.value).toBe(0.49); expect(colourA.alpha).toBe(0.25); }); test("saturationv setter A", () => { colourA.saturationv = 0.25; expect(colourA.red).toBe(94); expect(colourA.green).toBe(96); expect(colourA.blue).toBe(125); expect(colourA.hue).toBe(235); expect(colourA.saturationv).toBe(0.25); expect(colourA.value).toBe(0.49); expect(colourA.alpha).toBe(0.25); }); test("value setter A", () => { colourA.value = 0.88; expect(colourA.red).toBe(11); expect(colourA.green).toBe(29); expect(colourA.blue).toBe(224); expect(colourA.hue).toBe(235); expect(colourA.saturationv).toBe(0.95); expect(colourA.value).toBe(0.88); expect(colourA.alpha).toBe(0.25); }); test("alpha setter A", () => { colourA.alpha = 0; expect(colourA.red).toBe(6); expect(colourA.green).toBe(16); expect(colourA.blue).toBe(125); expect(colourA.hue).toBe(235); expect(colourA.saturationv).toBe(0.95); expect(colourA.value).toBe(0.49); expect(colourA.alpha).toBe(0); }); test("red setter black", () => { black.red = 189; expect(black.red).toBe(189); expect(black.green).toBe(0); expect(black.blue).toBe(0); expect(black.hue).toBe(0); expect(black.saturationv).toBe(1); expect(black.value).toBe(0.74); }); test("green setter black", () => { black.green = 16; expect(black.red).toBe(0); expect(black.green).toBe(16); expect(black.blue).toBe(0); expect(black.hue).toBe(120); expect(black.saturationv).toBe(1); expect(black.value).toBe(0.06); }); test("blue setter black", () => { black.blue = 222; expect(black.red).toBe(0); expect(black.green).toBe(0); expect(black.blue).toBe(222); expect(black.hue).toBe(240); expect(black.saturationv).toBe(1); expect(black.value).toBe(0.87); }); test("hue setter black", () => { black.hue = 333; expect(black.red).toBe(0); expect(black.green).toBe(0); expect(black.blue).toBe(0); expect(black.hue).toBe(333); expect(black.saturationv).toBe(0); expect(black.value).toBe(0); }); test("saturationv setter black", () => { black.saturationv = 0.69; expect(black.red).toBe(0); expect(black.green).toBe(0); expect(black.blue).toBe(0); expect(black.hue).toBe(0); expect(black.saturationv).toBe(0.69); expect(black.value).toBe(0); }); test("value setter black", () => { black.value = 0.98; expect(black.red).toBe(250); expect(black.green).toBe(250); expect(black.blue).toBe(250); expect(black.hue).toBe(0); expect(black.saturationv).toBe(0); expect(black.value).toBe(0.98); }); test("RGB constructor invalid", () => { expect(() => Colour.RGB(256, 0, 0)).toThrow(); expect(() => Colour.RGB(0, 256, 0)).toThrow(); expect(() => Colour.RGB(0, 0, 256)).toThrow(); expect(() => Colour.RGB(-1, 0, 0)).toThrow(); expect(() => Colour.RGB(0, -1, 0)).toThrow(); expect(() => Colour.RGB(0, 0, -1)).toThrow(); expect(() => Colour.RGB(0, 100, 200, 2)).toThrow(); expect(() => Colour.RGB(0, 100, 200, -1)).toThrow(); }); test("HSV constructor invalid", () => { expect(() => Colour.HSV(361, 0, 0)).toThrow(); expect(() => Colour.HSV(-1, 0, 0)).toThrow(); expect(() => Colour.HSV(0, 2, 0)).toThrow(); expect(() => Colour.HSV(0, -1, 0)).toThrow(); expect(() => Colour.HSV(0, 0, 2)).toThrow(); expect(() => Colour.HSV(0, 0, -1)).toThrow(); expect(() => Colour.HSV(0, 0, 0, 2)).toThrow(); expect(() => Colour.HSV(0, 0, 0, -1)).toThrow(); }); test("CMYK constructor invalid", () => { expect(() => Colour.CMYK(1.1, 0, 0, 0, 0)).toThrow(); expect(() => Colour.CMYK(0, -1.1, 0, 0, 0)).toThrow(); expect(() => Colour.CMYK(0, 0, 1.1, 0, 0)).toThrow(); expect(() => Colour.CMYK(0, 0, 0, -1.1, 0)).toThrow(); expect(() => Colour.CMYK(0, 0, 0, 0, -1.1)).toThrow(); }); test("HSL constructor invalid", () => { expect(() => Colour.HSL(361, 0.5, 1)).toThrow(); expect(() => Colour.HSL(0, -1, 0)).toThrow(); expect(() => Colour.HSL(0, 0, 1.2)).toThrow(); expect(() => Colour.HSL(0, 0, 0, -1)).toThrow(); }); test("HWB constructor invalid", () => { expect(() => Colour.HWB(361, 0, 1)).toThrow(); expect(() => Colour.HWB(0, -1, 0)).toThrow(); expect(() => Colour.HWB(0, 0, 1.2)).toThrow(); expect(() => Colour.HWB(0, 0, 0, -1)).toThrow(); }); test("red setter invalid", () => { expect(() => colourA.red = 256).toThrow(); expect(() => colourA.red = -1).toThrow(); }); test("green setter invalid", () => { expect(() => colourA.green = 256).toThrow(); expect(() => colourA.green = -1).toThrow(); }); test("blue setter invalid", () => { expect(() => colourA.blue = 256).toThrow(); expect(() => colourA.blue = -1).toThrow(); }); test("hue setter invalid", () => { expect(() => colourA.hue = 361).toThrow(); expect(() => colourA.hue = -1).toThrow(); }); test("saturationv setter invalid", () => { expect(() => colourA.saturationv = 2).toThrow(); expect(() => colourA.saturationv = -1).toThrow(); }); test("value setter invalid", () => { expect(() => colourA.value = 2).toThrow(); expect(() => colourA.value = -1).toThrow(); }); test("alpha setter invalid", () => { expect(() => colourA.alpha = 2).toThrow(); expect(() => colourA.alpha = -1).toThrow(); }); test("cyan setter invalid", () => { expect(() => colourA.cyan = 256).toThrow(); expect(() => colourA.cyan = -1).toThrow(); }); test("magenta setter invalid", () => { expect(() => colourA.magenta = 256).toThrow(); expect(() => colourA.magenta = -1).toThrow(); }); test("yellow setter invalid", () => { expect(() => colourA.yellow = 256).toThrow(); expect(() => colourA.yellow = -1).toThrow(); }); test("black setter invalid", () => { expect(() => colourA.black = 256).toThrow(); expect(() => colourA.black = -1).toThrow(); }); test("white setter invalid", () => { expect(() => colourA.white = 256).toThrow(); expect(() => colourA.white = -1).toThrow(); }); test("saturationl setter invalid", () => { expect(() => colourA.saturationl = 256).toThrow(); expect(() => colourA.saturationl = -1).toThrow(); }); test("light setter invalid", () => { expect(() => colourA.light = 256).toThrow(); expect(() => colourA.light = -1).toThrow(); }); test("cyan 1", () => { expect(colour1.cyan).toBe(0.00); }); test("cyan 2", () => { expect(colour2.cyan).toBe(0.11); }); test("magenta 1", () => { expect(colour1.magenta).toBe(0.25); }); test("magenta 2", () => { expect(colour2.magenta).toBe(0.46); }); test("yellow 1", () => { expect(colour1.yellow).toBe(0.95); }); test("yellow 2", () => { expect(colour2.yellow).toBe(0.00); }); test("saturationl 1", () => { expect(colour1.saturationl).toBe(0.94); }); test("saturationl 2", () => { expect(colour2.saturationl).toBe(0.30); }); test("light 1", () => { expect(colour1.light).toBe(0.51); }); test("light 2", () => { expect(colour2.light).toBe(0.28); }); test("white 1", () => { expect(colour1.white).toBe(0.05); }); test("white 2", () => { expect(colour2.white).toBe(0.20); }); test("black 1", () => { expect(colour1.black).toBe(0.03); }); test("black 2", () => { expect(colour2.black).toBe(0.64); }); test("CMYK constructor 1", () => { const colour = Colour.CMYK(0.50, 0.00, 0.42, 0.74, 0.50); expect(colour.red).toBe(33); expect(colour.green).toBe(66); expect(colour.blue).toBe(38); expect(colour.hue).toBe(129); expect(colour.saturationv).toBe(0.50); expect(colour.value).toBe(0.26); expect(colour.cyan).toBe(0.50); expect(colour.magenta).toBe(0.00); expect(colour.yellow).toBe(0.42); expect(colour.saturationl).toBe(0.33); expect(colour.light).toBe(0.19); expect(colour.white).toBe(0.13); expect(colour.black).toBe(0.74); expect(colour.alpha).toBe(0.50); }); test("CMYK constructor 2", () => { const colour = Colour.CMYK(0.00, 0.30, 0.20, 0.50); expect(colour.red).toBe(128); expect(colour.green).toBe(89); expect(colour.blue).toBe(102); expect(colour.hue).toBe(340); expect(colour.saturationv).toBe(0.30); expect(colour.value).toBe(0.50); expect(colour.cyan).toBe(0.00); expect(colour.magenta).toBe(0.30); expect(colour.yellow).toBe(0.20); expect(colour.saturationl).toBe(0.18); expect(colour.light).toBe(0.43); expect(colour.white).toBe(0.35); expect(colour.black).toBe(0.50); expect(colour.alpha).toBe(1.00); }); test("HSL constructor 1", () => { const colour = Colour.HSL(11, 0.94, 0.48, 0.01); expect(colour.red).toBe(237); expect(colour.green).toBe(50); expect(colour.blue).toBe(7); expect(colour.hue).toBe(11); expect(colour.saturationv).toBe(0.97); expect(colour.value).toBe(0.93); expect(colour.cyan).toBe(0.0); expect(colour.magenta).toBe(0.79); expect(colour.yellow).toBe(0.97); expect(colour.saturationl).toBe(0.94); expect(colour.light).toBe(0.48); expect(colour.white).toBe(0.03); expect(colour.black).toBe(0.07); expect(colour.alpha).toBe(0.01); }); test("HSL constructor 2", () => { const colour = Colour.HSL(38, 0.03, 0.77); expect(colour.red).toBe(198); expect(colour.green).toBe(197); expect(colour.blue).toBe(195); expect(colour.hue).toBe(40); expect(colour.saturationv).toBe(0.02); expect(colour.value).toBe(0.78); expect(colour.cyan).toBe(0.00); expect(colour.magenta).toBe(0.01); expect(colour.yellow).toBe(0.02); expect(colour.saturationl).toBe(0.03); expect(colour.light).toBe(0.77); expect(colour.white).toBe(0.76); expect(colour.black).toBe(0.22); expect(colour.alpha).toBe(1.00); }); test("HSL constructor 3", () => { const colour = Colour.HSL(81, 0.36, 0.26); expect(colour.red).toBe(73); expect(colour.green).toBe(90); expect(colour.blue).toBe(42); expect(colour.hue).toBe(81); expect(colour.saturationl).toBe(0.36); expect(colour.light).toBe(0.26); }); test("HWB constructor 1", () => { const colour = Colour.HWB(181, 0.01, 0.82, 0.99); expect(colour.red).toBe(3); expect(colour.green).toBe(45); expect(colour.blue).toBe(46); expect(colour.hue).toBe(181); expect(colour.saturationv).toBe(0.94); expect(colour.value).toBe(0.18); expect(colour.cyan).toBe(0.93); expect(colour.magenta).toBe(0.02); expect(colour.yellow).toBe(0.00); expect(colour.saturationl).toBe(0.88); expect(colour.light).toBe(0.10); expect(colour.white).toBe(0.01); expect(colour.black).toBe(0.82); expect(colour.alpha).toBe(0.99); }); test("HWB constructor 2", () => { const colour = Colour.HWB(270, 0.84, 0.14); expect(colour.red).toBe(217); expect(colour.green).toBe(215); expect(colour.blue).toBe(219); expect(colour.hue).toBe(270); expect(colour.saturationv).toBe(0.02); expect(colour.value).toBe(0.86); expect(colour.cyan).toBe(0.01); expect(colour.magenta).toBe(0.02); expect(colour.yellow).toBe(0.00); expect(colour.saturationl).toBe(0.05); expect(colour.light).toBe(0.85); expect(colour.white).toBe(0.84); expect(colour.black).toBe(0.14); expect(colour.alpha).toBe(1.00); }); test("red setter B", () => { colourB.red = 69; expect(colourB.red).toBe(69); expect(colourB.green).toBe(0); expect(colourB.blue).toBe(96); expect(colourB.hue).toBe(283); expect(colourB.saturationv).toBe(1.00); expect(colourB.value).toBe(0.38); expect(colourB.cyan).toBe(0.28); expect(colourB.magenta).toBe(1.00); expect(colourB.yellow).toBe(0.00); expect(colourB.saturationl).toBe(1.00); expect(colourB.light).toBe(0.19); expect(colourB.white).toBe(0.00); expect(colourB.black).toBe(0.62); expect(colourB.alpha).toBe(1.00); }); test("green setter B", () => { colourB.green = 69; expect(colourB.red).toBe(128); expect(colourB.green).toBe(69); expect(colourB.blue).toBe(96); expect(colourB.hue).toBe(333); expect(colourB.saturationv).toBe(0.46); expect(colourB.value).toBe(0.50); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(0.46); expect(colourB.yellow).toBe(0.25); expect(colourB.saturationl).toBe(0.30); expect(colourB.light).toBe(0.39); expect(colourB.white).toBe(0.27); expect(colourB.black).toBe(0.50); expect(colourB.alpha).toBe(1.00); }); test("blue setter B", () => { colourB.blue = 69; expect(colourB.red).toBe(128); expect(colourB.green).toBe(0); expect(colourB.blue).toBe(69); expect(colourB.hue).toBe(328); expect(colourB.saturationv).toBe(1.00); expect(colourB.value).toBe(0.50); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(1.00); expect(colourB.yellow).toBe(0.46); expect(colourB.saturationl).toBe(1.00); expect(colourB.light).toBe(0.25); expect(colourB.white).toBe(0.00); expect(colourB.black).toBe(0.50); expect(colourB.alpha).toBe(1.00); }); test("hue setter B", () => { colourB.hue = 69; expect(colourB.red).toBe(108); expect(colourB.green).toBe(128); expect(colourB.blue).toBe(0); expect(colourB.hue).toBe(69); expect(colourB.saturationv).toBe(1.00); expect(colourB.value).toBe(0.50); expect(colourB.cyan).toBe(0.16); expect(colourB.magenta).toBe(0.00); expect(colourB.yellow).toBe(1.00); expect(colourB.saturationl).toBe(1.00); expect(colourB.light).toBe(0.25); expect(colourB.white).toBe(0.00); expect(colourB.black).toBe(0.50); expect(colourB.alpha).toBe(1.00); }); test("saturationv setter B", () => { colourB.saturationv = 0.69; expect(colourB.red).toBe(128); expect(colourB.green).toBe(40); expect(colourB.blue).toBe(106); expect(colourB.hue).toBe(315); expect(colourB.saturationv).toBe(0.69); expect(colourB.value).toBe(0.50); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(0.69); expect(colourB.yellow).toBe(0.17); expect(colourB.saturationl).toBe(0.52); expect(colourB.light).toBe(0.33); expect(colourB.white).toBe(0.16); expect(colourB.black).toBe(0.50); expect(colourB.alpha).toBe(1.00); }); test("value setter B", () => { colourB.value = 0.69; expect(colourB.red).toBe(176); expect(colourB.green).toBe(0); expect(colourB.blue).toBe(132); expect(colourB.hue).toBe(315); expect(colourB.saturationv).toBe(1.00); expect(colourB.value).toBe(0.69); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(1.00); expect(colourB.yellow).toBe(0.25); expect(colourB.saturationl).toBe(1.00); expect(colourB.light).toBe(0.35); expect(colourB.white).toBe(0.00); expect(colourB.black).toBe(0.31); expect(colourB.alpha).toBe(1.00); }); test("cyan setter B", () => { colourB.cyan = 0.69; expect(colourB.red).toBe(40); expect(colourB.green).toBe(0); expect(colourB.blue).toBe(96); expect(colourB.hue).toBe(265); expect(colourB.saturationv).toBe(1.00); expect(colourB.value).toBe(0.38); expect(colourB.cyan).toBe(0.69); expect(colourB.magenta).toBe(1.00); expect(colourB.yellow).toBe(0.25); expect(colourB.saturationl).toBe(1.00); expect(colourB.light).toBe(0.19); expect(colourB.white).toBe(0.00); expect(colourB.black).toBe(0.62); expect(colourB.alpha).toBe(1.00); }); test("magenta setter B", () => { colourB.magenta = 0.69; expect(colourB.red).toBe(128); expect(colourB.green).toBe(40); expect(colourB.blue).toBe(96); expect(colourB.hue).toBe(322); expect(colourB.saturationv).toBe(0.69); expect(colourB.value).toBe(0.50); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(0.69); expect(colourB.yellow).toBe(0.25); expect(colourB.saturationl).toBe(0.52); expect(colourB.light).toBe(0.33); expect(colourB.white).toBe(0.16); expect(colourB.black).toBe(0.50); expect(colourB.alpha).toBe(1.00); }); test("yellow setter B", () => { colourB.yellow = 0.69; expect(colourB.red).toBe(128); expect(colourB.green).toBe(0); expect(colourB.blue).toBe(40); expect(colourB.hue).toBe(341); expect(colourB.saturationv).toBe(1.00); expect(colourB.value).toBe(0.50); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(1.00); expect(colourB.yellow).toBe(0.69); expect(colourB.saturationl).toBe(1.00); expect(colourB.light).toBe(0.25); expect(colourB.white).toBe(0.00); expect(colourB.black).toBe(0.50); expect(colourB.alpha).toBe(1.00); }); test("saturationl setter B", () => { colourB.saturationl = 0.69; expect(colourB.red).toBe(108); expect(colourB.green).toBe(20); expect(colourB.blue).toBe(86); expect(colourB.hue).toBe(315); expect(colourB.saturationv).toBe(0.81); expect(colourB.value).toBe(0.42); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(0.81); expect(colourB.yellow).toBe(0.20); expect(colourB.saturationl).toBe(0.69); expect(colourB.light).toBe(0.25); expect(colourB.white).toBe(0.08); expect(colourB.black).toBe(0.58); expect(colourB.alpha).toBe(1.00); }); test("light setter B", () => { colourB.light = 0.69; expect(colourB.red).toBe(255); expect(colourB.green).toBe(97); expect(colourB.blue).toBe(215); expect(colourB.hue).toBe(315); expect(colourB.saturationv).toBe(0.62); expect(colourB.value).toBe(1.00); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(0.62); expect(colourB.yellow).toBe(0.16); expect(colourB.saturationl).toBe(1.00); expect(colourB.light).toBe(0.69); expect(colourB.white).toBe(0.38); expect(colourB.black).toBe(0.00); expect(colourB.alpha).toBe(1.00); }); test("white setter B", () => { colourB.white = 0.01; expect(colourB.red).toBe(128); expect(colourB.green).toBe(3); expect(colourB.blue).toBe(96); expect(colourB.hue).toBe(315); expect(colourB.saturationv).toBe(0.98); expect(colourB.value).toBe(0.50); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(0.98); expect(colourB.yellow).toBe(0.25); expect(colourB.saturationl).toBe(0.95); expect(colourB.light).toBe(0.26); expect(colourB.white).toBe(0.01); expect(colourB.black).toBe(0.50); expect(colourB.alpha).toBe(1.00); }); test("black setter B", () => { colourB.black = 0.01; expect(colourB.red).toBe(252); expect(colourB.green).toBe(0); expect(colourB.blue).toBe(189); expect(colourB.hue).toBe(315); expect(colourB.saturationv).toBe(1.00); expect(colourB.value).toBe(0.99); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(1.00); expect(colourB.yellow).toBe(0.25); expect(colourB.saturationl).toBe(1.00); expect(colourB.light).toBe(0.49); expect(colourB.white).toBe(0.00); expect(colourB.black).toBe(0.01); expect(colourB.alpha).toBe(1.00); }); test("alpha setter B", () => { colourB.alpha = 0.69; expect(colourB.red).toBe(128); expect(colourB.green).toBe(0); expect(colourB.blue).toBe(96); expect(colourB.hue).toBe(315); expect(colourB.saturationv).toBe(1.00); expect(colourB.value).toBe(0.50); expect(colourB.cyan).toBe(0.00); expect(colourB.magenta).toBe(1.00); expect(colourB.yellow).toBe(0.25); expect(colourB.saturationl).toBe(1.00); expect(colourB.light).toBe(0.25); expect(colourB.white).toBe(0.00); expect(colourB.black).toBe(0.50); expect(colourB.alpha).toBe(0.69); }); test("equals true", () => { const colour1Local = new Colour("rgba(32, 122, 166, 0.5)"); // Renamed to avoid conflict const colour2Local = new Colour("#207AA680"); // Renamed to avoid conflict expect(colour1Local.equals(colour2Local)).toBe(true); }); test("equals false", () => { const colour1Local = Colour.CMYK(0.00, 0.95, 0.86, 0.38); // #9E0816 const colour2Local = Colour.HWB(285, 0.32, 0.65); // #58525A expect(colour1Local.equals(colour2Local)).toBe(false); }); //# sourceMappingURL=colour.test.js.map