diff --git a/app/src/lib/nostr/languageNames.test.ts b/app/src/lib/nostr/languageNames.test.ts new file mode 100644 index 0000000..8d64698 --- /dev/null +++ b/app/src/lib/nostr/languageNames.test.ts @@ -0,0 +1,17 @@ +import { describe, it, expect } from 'vitest'; +import { displayLanguage } from './languageNames'; + +describe('displayLanguage', () => { + it('kennt deutsch', () => { + expect(displayLanguage('de')).toBe('Deutsch'); + }); + it('kennt english', () => { + expect(displayLanguage('en')).toBe('English'); + }); + it('fällt bei unbekanntem code auf uppercase-code zurück', () => { + expect(displayLanguage('fr')).toBe('FR'); + }); + it('fällt bei leerer sprache auf ? zurück', () => { + expect(displayLanguage('')).toBe('?'); + }); +}); diff --git a/app/src/lib/nostr/languageNames.ts b/app/src/lib/nostr/languageNames.ts new file mode 100644 index 0000000..1e2d44b --- /dev/null +++ b/app/src/lib/nostr/languageNames.ts @@ -0,0 +1,9 @@ +const NAMES: Record = { + de: 'Deutsch', + en: 'English' +}; + +export function displayLanguage(code: string): string { + if (!code) return '?'; + return NAMES[code] ?? code.toUpperCase(); +}