apphouse
Version:
Component library for React that uses observable state management and theme-able components.
36 lines (30 loc) • 1.34 kB
text/typescript
import { getBaseColorFromGradient } from './getBaseColorFromGradient';
// Test case: Valid gradient string
describe('getBaseColorFromGradient', () => {
test('getBaseColorFromGradient returns the base color from a valid gradient', () => {
const gradient = 'linear-gradient(to right, #ff0000, #0000ff)';
const baseColor = getBaseColorFromGradient(gradient);
expect(baseColor).toBe('#ff0000');
});
test('getBaseColorFromGradient returns the base color from a valid gradient', () => {
const gradient =
'linear-gradient(90deg, rgba(131,58,180,1) 0%, rgba(253,29,29,1) 50%, rgba(252,176,69,1) 100%)';
const baseColor = getBaseColorFromGradient(gradient);
expect(baseColor).toBe('rgba(131,58,180,1)');
});
test('should return color if not gradient', () => {
const gradient = '#FFFFFF';
const baseColor = getBaseColorFromGradient(gradient);
expect(baseColor).toBe('#FFFFFF');
});
test('should return rgba color if not gradient', () => {
const gradient = 'rgba(131,58,180,1)';
const baseColor = getBaseColorFromGradient(gradient);
expect(baseColor).toBe('rgba(131,58,180,1)');
});
test('should accept string colors', () => {
const gradient = 'limeGreen';
const baseColor = getBaseColorFromGradient(gradient);
expect(baseColor).toBe('limeGreen');
});
});