ueberpruefen
This commit is contained in:
116
__tests__/lib/utils/coneConverter.test.ts
Normal file
116
__tests__/lib/utils/coneConverter.test.ts
Normal file
@@ -0,0 +1,116 @@
|
||||
import {
|
||||
getConeTemperature,
|
||||
getConeData,
|
||||
suggestConeFromTemperature,
|
||||
isValidCone,
|
||||
formatCone,
|
||||
getBisqueCones,
|
||||
getGlazeFiringCones,
|
||||
} from '../../../src/lib/utils/coneConverter';
|
||||
|
||||
describe('Cone Converter', () => {
|
||||
describe('getConeTemperature', () => {
|
||||
it('returns temperature for cone 04 (bisque)', () => {
|
||||
const temp = getConeTemperature('04');
|
||||
expect(temp).not.toBeNull();
|
||||
expect(temp?.value).toBe(1945);
|
||||
expect(temp?.unit).toBe('F');
|
||||
});
|
||||
|
||||
it('returns temperature for cone 6 (glaze firing)', () => {
|
||||
const temp = getConeTemperature('6');
|
||||
expect(temp).not.toBeNull();
|
||||
expect(temp?.value).toBe(2232);
|
||||
expect(temp?.unit).toBe('F');
|
||||
});
|
||||
|
||||
it('returns temperature for cone 10', () => {
|
||||
const temp = getConeTemperature('10');
|
||||
expect(temp).not.toBeNull();
|
||||
expect(temp?.value).toBe(2345);
|
||||
});
|
||||
|
||||
it('handles cone 06 correctly', () => {
|
||||
const temp = getConeTemperature('06');
|
||||
expect(temp).not.toBeNull();
|
||||
expect(temp?.value).toBe(1828);
|
||||
});
|
||||
|
||||
it('returns null for invalid cone', () => {
|
||||
const temp = getConeTemperature('999');
|
||||
expect(temp).toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
describe('getConeData', () => {
|
||||
it('returns full cone data', () => {
|
||||
const data = getConeData('6');
|
||||
expect(data).not.toBeNull();
|
||||
expect(data?.cone).toBe('6');
|
||||
expect(data?.fahrenheit).toBe(2232);
|
||||
expect(data?.celsius).toBe(1222);
|
||||
expect(data?.description).toContain('Stoneware');
|
||||
});
|
||||
});
|
||||
|
||||
describe('suggestConeFromTemperature', () => {
|
||||
it('suggests cone 6 for 2232°F', () => {
|
||||
const temp = { value: 2232, unit: 'F' as const };
|
||||
const suggested = suggestConeFromTemperature(temp);
|
||||
expect(suggested).not.toBeNull();
|
||||
expect(suggested?.cone).toBe('6');
|
||||
});
|
||||
|
||||
it('suggests cone 04 for 1945°F', () => {
|
||||
const temp = { value: 1945, unit: 'F' as const };
|
||||
const suggested = suggestConeFromTemperature(temp);
|
||||
expect(suggested).not.toBeNull();
|
||||
expect(suggested?.cone).toBe('04');
|
||||
});
|
||||
|
||||
it('returns null for temperatures far from any cone', () => {
|
||||
const temp = { value: 500, unit: 'F' as const };
|
||||
const suggested = suggestConeFromTemperature(temp);
|
||||
expect(suggested).toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
describe('isValidCone', () => {
|
||||
it('validates common cones', () => {
|
||||
expect(isValidCone('04')).toBe(true);
|
||||
expect(isValidCone('06')).toBe(true);
|
||||
expect(isValidCone('6')).toBe(true);
|
||||
expect(isValidCone('10')).toBe(true);
|
||||
});
|
||||
|
||||
it('rejects invalid cones', () => {
|
||||
expect(isValidCone('99')).toBe(false);
|
||||
expect(isValidCone('abc')).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
describe('formatCone', () => {
|
||||
it('formats cone number', () => {
|
||||
expect(formatCone('04')).toBe('Cone 04');
|
||||
expect(formatCone('6')).toBe('Cone 6');
|
||||
});
|
||||
});
|
||||
|
||||
describe('getBisqueCones', () => {
|
||||
it('returns common bisque cones', () => {
|
||||
const cones = getBisqueCones();
|
||||
expect(cones).toContain('04');
|
||||
expect(cones).toContain('03');
|
||||
expect(cones.length).toBeGreaterThan(0);
|
||||
});
|
||||
});
|
||||
|
||||
describe('getGlazeFiringCones', () => {
|
||||
it('returns common glaze firing cones', () => {
|
||||
const cones = getGlazeFiringCones();
|
||||
expect(cones).toContain('6');
|
||||
expect(cones).toContain('10');
|
||||
expect(cones.length).toBeGreaterThan(0);
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user