import { describe, it, expect } from 'vitest'; import { SkillLevelService } from './SkillLevelService'; describe('SkillLevelService', () => { describe('getSkillLevel', () => { it('should return pro for rating >= 3000', () => { expect(SkillLevelService.getSkillLevel(3000)).toBe('pro'); expect(SkillLevelService.getSkillLevel(5000)).toBe('pro'); }); it('should return advanced for rating >= 2500 and < 3000', () => { expect(SkillLevelService.getSkillLevel(2500)).toBe('advanced'); expect(SkillLevelService.getSkillLevel(2999)).toBe('advanced'); }); it('should return intermediate for rating >= 1800 and < 2500', () => { expect(SkillLevelService.getSkillLevel(1800)).toBe('intermediate'); expect(SkillLevelService.getSkillLevel(2499)).toBe('intermediate'); }); it('should return beginner for rating < 1800', () => { expect(SkillLevelService.getSkillLevel(1799)).toBe('beginner'); expect(SkillLevelService.getSkillLevel(500)).toBe('beginner'); }); }); describe('getTeamPerformanceLevel', () => { it('should return beginner for null rating', () => { expect(SkillLevelService.getTeamPerformanceLevel(null)).toBe('beginner'); }); it('should return pro for rating >= 4500', () => { expect(SkillLevelService.getTeamPerformanceLevel(4500)).toBe('pro'); }); it('should return advanced for rating >= 3000 and < 4500', () => { expect(SkillLevelService.getTeamPerformanceLevel(3000)).toBe('advanced'); expect(SkillLevelService.getTeamPerformanceLevel(4499)).toBe('advanced'); }); it('should return intermediate for rating >= 2000 and < 3000', () => { expect(SkillLevelService.getTeamPerformanceLevel(2000)).toBe('intermediate'); expect(SkillLevelService.getTeamPerformanceLevel(2999)).toBe('intermediate'); }); it('should return beginner for rating < 2000', () => { expect(SkillLevelService.getTeamPerformanceLevel(1999)).toBe('beginner'); }); }); });