src/fragmentarium/domain/replaceSpecialCharacters.test.ts
import replaceSpecialCharacters from './replaceSpecialCharacters'
test.each([
['c', 'š'],
['sz', 'š'],
['s,', 'ṣ'],
['ş', 'ṣ'],
['t,', 'ṭ'],
['ḫ', 'h'],
['j', 'g'],
['ŋ', 'g'],
['ĝ', 'g'],
['g̃', 'g'],
['C', 'Š'],
['SZ', 'Š'],
['S,', 'Ṣ'],
['Ş', 'Ṣ'],
['T,', 'Ṭ'],
['Ḫ', 'H'],
['J', 'G'],
['Ŋ', 'G'],
['G̃', 'G'],
['Ĝ', 'G'],
["'", 'ʾ'],
['aa', 'ā'],
['ee', 'ē'],
['ii', 'ī'],
['uu', 'ū'],
['āa', 'â'],
['ēe', 'ê'],
['īi', 'î'],
['ūu', 'û'],
['AA', 'Ā'],
['aA', 'Ā'],
['EE', 'Ē'],
['eE', 'Ē'],
['II', 'Ī'],
['iI', 'Ī'],
['UU', 'Ū'],
['uU', 'Ū'],
['ĀA', 'â'],
['āA', 'â'],
['ĒE', 'ê'],
['ēE', 'ê'],
['ĪI', 'î'],
['īI', 'î'],
['ŪU', 'û'],
['ūU', 'û'],
[
"SZA ḫa'-t,i u ma-ŋi-cu' G̃A s,u'-lu-mu at-ta-şi-szu",
'ŠA haʾ-ṭi u ma-gi-šuʾ GA ṣuʾ-lu-mu at-ta-ṣi-šu',
],
['ana harraanim awiilum imāat', 'ana harrānim awīlum imât'],
])('%s', (character, replacement) => {
const text = replaceSpecialCharacters(true, true, character)
expect(text).toEqual(replacement)
})