All tests passed. (refresh)

Text Expected Actual
test1_uppercase_letters_in_isolation:
Passed mut.tr("Α,Β,Γ,Δ,Ε") A,B,G,D,E A,B,G,D,E
Passed mut.tr("Ζ,Η,Θ,Ι,Κ,Λ") Z,Ē,Th,I,K,L Z,Ē,Th,I,K,L
Passed mut.tr("Μ,Ν,Ξ,Ο,Π,Ρ") M,N,X,O,P,R M,N,X,O,P,R
Passed mut.tr("Σ,Τ,Υ,Φ,Χ,Ψ,Ω") S,T,Y,F,Ch,Ps,Ō S,T,Y,F,Ch,Ps,Ō
Text Expected Actual
test2_lowercase_letters_in_isolation:
Passed mut.tr("α,β,γ,δ,ε,ζ") a,b,g,d,e,z a,b,g,d,e,z
Passed mut.tr("η,θ,ι,κ,λ,μ") ē,th,i,k,l,m ē,th,i,k,l,m
Passed mut.tr("ν,ξ,ο,π,ρ,σ") n,x,o,p,r,s n,x,o,p,r,s
Passed mut.tr("ς,τ,υ,φ,χ,ψ,ω") s,t,y,f,ch,ps,ō s,t,y,f,ch,ps,ō
Text Expected Actual
test3_gamma_digraphs:
Passed mut.tr("ἰλίγγων") ilíngōn ilíngōn
Passed mut.tr("σάλπιγξ") sálpinx sálpinx
Passed mut.tr("Ἐγχειρίδιον") Encheirídion Encheirídion
Passed mut.tr("ὄγκος") ónkos ónkos
Text Expected Actual
test4_rho_shapes:
Passed mut.tr("ὄστϱακον") óstrakon óstrakon
Text Expected Actual
test4_theta_shapes:
Passed mut.tr("μετάϑεσις") metáthesis metáthesis
Text Expected Actual
test98_LOC_reference:
Passed mut.tr("Ἡσιόδου τοῦ Ἀσκραίου Ἔργα καὶ ἡμέραι") Hēsiódou tou Askraíou Érga kai hēmérai Hēsiódou tou Askraíou Érga kai hēmérai
Passed mut.tr("Ἡ τοῦ Ὁμήρου Ἰλιάς") Hē tou Homḗrou Iliás Hē tou Homḗrou Iliás
Passed mut.tr("Φίληβος ἢ Περὶ ἡδονῆς") Fílēbos ē Peri hēdonēs Fílēbos ē Peri hēdonēs
Passed mut.tr("Ἀγνώστῳ θεῷ") Agnṓstō theō Agnṓstō theō
Passed mut.tr("κεῖται παρ’ Ἅιδῃ") keitai par’ Háidē keitai par’ Háidē
Passed mut.tr("Αἴτια Ῥωμαϊκά") Aítia Rhōmaiká Aítia Rhōmaiká
Passed mut.tr("Ὅτι οὐδ’ ἡδέως ζῆν ἔστι κατ’ Ἐπίκουρον") Hóti oud’ hēdéōs zēn ésti kat’ Epíkouron Hóti oud’ hēdéōs zēn ésti kat’ Epíkouron
Passed mut.tr("Περὶ τοῦ μὴ ῥᾳδίως πιστεύειν διαβολῇ") Peri tou mē rhadíōs pisteúein diabolē Peri tou mē rhadíōs pisteúein diabolē
Passed mut.tr("ἀΰπνους νύκτας ἴαυον") aýpnous nýktas íauon aýpnous nýktas íauon
Passed mut.tr("Λητοῦς καὶ Διὸς υἱός") Lētous kai Dios huiós Lētous kai Dios huiós
Passed mut.tr("ὑϊκὸν πάσχειν") hyikon páschein hyikon páschein
Passed mut.tr("εἶπε πρὸς τὸν ἄνδρα τὸν ἑωυτῆς") eipe pros ton ándra ton heōutēs eipe pros ton ándra ton heōutēs
Passed mut.tr("τί τοῦδ’ ἂν εὕρημ’ ηὗρον εὐτυχέστερον;") tí toud’ an heúrēm’ hēuron eutychésteron; tí toud’ an heúrēm’ hēuron eutychésteron;
Passed mut.tr("Τοῦ Κατὰ πασῶν αἱρέσεων ἐλέγχου βιβλίον αʹ") Tou Kata pasōn hairéseōn elénchou biblíon aʹ Tou Kata pasōn hairéseōn elénchou biblíon aʹ
Passed mut.tr("καλὸν κἀγαθόν") kalon kagathón kalon kagathón
Passed mut.tr("ᾤχοντο θοἰμάτιον λαβόντες μου") ṓchonto thoimátion labóntes mou ṓchonto thoimátion labóntes mou
Passed mut.tr("Περὶ ἰλίγγων") Peri ilíngōn Peri ilíngōn
Passed mut.tr("ὅτε τ’ ἴαχε σάλπιγξ") hóte t’ íache sálpinx hóte t’ íache sálpinx
Passed mut.tr("Ἐγχειρίδιον ἁρμονικῆς") Encheirídion harmonikēs Encheirídion harmonikēs
Passed mut.tr("ἄλαϲτα δὲ ϝέργα πάθον κακὰ μηϲαμένοι") álasta de wérga páthon kaka mēsaménoi álasta de wérga páthon kaka mēsaménoi
Passed mut.tr("Δαμαρέτα τ’ ἐρατά τε Ϝιανθεμίϲ") Damaréta t’ eratá te Wianthemís Damaréta t’ eratá te Wianthemís
Passed mut.tr("ξένϝος") xénwos xénwos
Passed mut.tr("Πάτροϙλος") Pátroḳlos Pátroḳlos
Text Expected Actual
test99_Oedipus_Rex:
Passed mut.tr("Ἰοὺ ἰού· τὰ πάντʼ ἂν ἐξήκοι σαφῆ.") Iou ioú· ta pántʼ an exḗkoi safē. Iou ioú· ta pántʼ an exḗkoi safē.
Passed mut.tr("Ὦ φῶς, τελευταῖόν σε προσϐλέψαιμι νῦν,") Ō fōs, teleutaión se prosblépsaimi nyn, Ō fōs, teleutaión se prosblépsaimi nyn,
Passed mut.tr("ὅστις πέφασμαι φύς τʼ ἀφʼ ὧν οὐ χρῆν, ξὺν οἷς τʼ") hóstis péfasmai fýs tʼ afʼ hōn ou chrēn, xyn hois tʼ hóstis péfasmai fýs tʼ afʼ hōn ou chrēn, xyn hois tʼ
Passed mut.tr("οὐ χρῆν ὁμιλῶν, οὕς τέ μʼ οὐκ ἔδει κτανών.") ou chrēn homilōn, hoús té mʼ ouk édei ktanṓn. ou chrēn homilōn, hoús té mʼ ouk édei ktanṓn.
local t = require("Modul:UnitTests")
local mut = require("Modul:translit/grc")

function t:test1_uppercase_letters_in_isolation()
    self:equals('mut.tr("Α,Β,Γ,Δ,Ε")', mut.tr("Α,Β,Γ,Δ,Ε"), "A,B,G,D,E")
    self:equals('mut.tr("Ζ,Η,Θ,Ι,Κ,Λ")', mut.tr("Ζ,Η,Θ,Ι,Κ,Λ"), "Z,Ē,Th,I,K,L")
    self:equals('mut.tr("Μ,Ν,Ξ,Ο,Π,Ρ")', mut.tr("Μ,Ν,Ξ,Ο,Π,Ρ"), "M,N,X,O,P,R")
    self:equals('mut.tr("Σ,Τ,Υ,Φ,Χ,Ψ,Ω")', mut.tr("Σ,Τ,Υ,Φ,Χ,Ψ,Ω"), "S,T,Y,F,Ch,Ps,Ō")
end

function t:test2_lowercase_letters_in_isolation()
    self:equals('mut.tr("α,β,γ,δ,ε,ζ")', mut.tr("α,β,γ,δ,ε,ζ"), "a,b,g,d,e,z")
    self:equals('mut.tr("η,θ,ι,κ,λ,μ")', mut.tr("η,θ,ι,κ,λ,μ"), "ē,th,i,k,l,m")
    self:equals('mut.tr("ν,ξ,ο,π,ρ,σ")', mut.tr("ν,ξ,ο,π,ρ,σ"), "n,x,o,p,r,s")
    self:equals('mut.tr("ς,τ,υ,φ,χ,ψ,ω")', mut.tr("ς,τ,υ,φ,χ,ψ,ω"), "s,t,y,f,ch,ps,ō")
end

function t:test3_gamma_digraphs()
    self:equals('mut.tr("ἰλίγγων")', mut.tr("ἰλίγγων"), "ilíngōn")
    self:equals('mut.tr("σάλπιγξ")', mut.tr("σάλπιγξ"), "sálpinx")
    self:equals('mut.tr("Ἐγχειρίδιον")', mut.tr("Ἐγχειρίδιον"), "Encheirídion")
    self:equals('mut.tr("ὄγκος")', mut.tr("ὄγκος"), "ónkos")
end

function t:test4_rho_shapes()
    self:equals('mut.tr("ὄστϱακον")', mut.tr("ὄστϱακον"), "óstrakon")
end

function t:test4_theta_shapes()
    self:equals('mut.tr("μετάϑεσις")', mut.tr("μετάϑεσις"), "metáthesis")
end

function t:test98_LOC_reference() -- de från https://www.loc.gov/catdir/cpso/romanization/greek.pdf
    self:equals('mut.tr("Ἡσιόδου τοῦ Ἀσκραίου Ἔργα καὶ ἡμέραι")', mut.tr("Ἡσιόδου τοῦ Ἀσκραίου Ἔργα καὶ ἡμέραι"), "Hēsiódou tou Askraíou Érga kai hēmérai")
    self:equals('mut.tr("Ἡ τοῦ Ὁμήρου Ἰλιάς")', mut.tr("Ἡ τοῦ Ὁμήρου Ἰλιάς"), "Hē tou Homḗrou Iliás")
    self:equals('mut.tr("Φίληβος ἢ Περὶ ἡδονῆς")', mut.tr("Φίληβος ἢ Περὶ ἡδονῆς"), "Fílēbos ē Peri hēdonēs")
    self:equals('mut.tr("Ἀγνώστῳ θεῷ")', mut.tr("Ἀγνώστῳ θεῷ"), "Agnṓstō theō")
    self:equals('mut.tr("κεῖται παρ’ Ἅιδῃ")', mut.tr("κεῖται παρ’ Ἅιδῃ"), "keitai par’ Háidē")
    self:equals('mut.tr("Αἴτια Ῥωμαϊκά")', mut.tr("Αἴτια Ῥωμαϊκά"), "Aítia Rhōmaiká")
    self:equals('mut.tr("Ὅτι οὐδ’ ἡδέως ζῆν ἔστι κατ’ Ἐπίκουρον")', mut.tr("Ὅτι οὐδ’ ἡδέως ζῆν ἔστι κατ’ Ἐπίκουρον"), "Hóti oud’ hēdéōs zēn ésti kat’ Epíkouron")
    self:equals('mut.tr("Περὶ τοῦ μὴ ῥᾳδίως πιστεύειν διαβολῇ")', mut.tr("Περὶ τοῦ μὴ ῥᾳδίως πιστεύειν διαβολῇ"), "Peri tou mē rhadíōs pisteúein diabolē")
    self:equals('mut.tr("ἀΰπνους νύκτας ἴαυον")', mut.tr("ἀΰπνους νύκτας ἴαυον"), "aýpnous nýktas íauon")
    self:equals('mut.tr("Λητοῦς καὶ Διὸς υἱός")', mut.tr("Λητοῦς καὶ Διὸς υἱός"), "Lētous kai Dios huiós")
    self:equals('mut.tr("ὑϊκὸν πάσχειν")', mut.tr("ὑϊκὸν πάσχειν"), "hyikon páschein")
    self:equals('mut.tr("εἶπε πρὸς τὸν ἄνδρα τὸν ἑωυτῆς")', mut.tr("εἶπε πρὸς τὸν ἄνδρα τὸν ἑωυτῆς"), "eipe pros ton ándra ton heōutēs")
    self:equals('mut.tr("τί τοῦδ’ ἂν εὕρημ’ ηὗρον εὐτυχέστερον;")', mut.tr("τί τοῦδ’ ἂν εὕρημ’ ηὗρον εὐτυχέστερον;"), "tí toud’ an heúrēm’ hēuron eutychésteron;")
    self:equals('mut.tr("Τοῦ Κατὰ πασῶν αἱρέσεων ἐλέγχου βιβλίον αʹ")', mut.tr("Τοῦ Κατὰ πασῶν αἱρέσεων ἐλέγχου βιβλίον αʹ"), "Tou Kata pasōn hairéseōn elénchou biblíon aʹ")
    self:equals('mut.tr("καλὸν κἀγαθόν")', mut.tr("καλὸν κἀγαθόν"), "kalon kagathón")
    self:equals('mut.tr("ᾤχοντο θοἰμάτιον λαβόντες μου")', mut.tr("ᾤχοντο θοἰμάτιον λαβόντες μου"), "ṓchonto thoimátion labóntes mou")
    self:equals('mut.tr("Περὶ ἰλίγγων")', mut.tr("Περὶ ἰλίγγων"), "Peri ilíngōn")
    self:equals('mut.tr("ὅτε τ’ ἴαχε σάλπιγξ")', mut.tr("ὅτε τ’ ἴαχε σάλπιγξ"), "hóte t’ íache sálpinx")
    self:equals('mut.tr("Ἐγχειρίδιον ἁρμονικῆς")', mut.tr("Ἐγχειρίδιον ἁρμονικῆς"), "Encheirídion harmonikēs")
    self:equals('mut.tr("ἄλαϲτα δὲ ϝέργα πάθον κακὰ μηϲαμένοι")', mut.tr("ἄλαϲτα δὲ ϝέργα πάθον κακὰ μηϲαμένοι"), "álasta de wérga páthon kaka mēsaménoi")
    self:equals('mut.tr("Δαμαρέτα τ’ ἐρατά τε Ϝιανθεμίϲ")', mut.tr("Δαμαρέτα τ’ ἐρατά τε Ϝιανθεμίϲ"), "Damaréta t’ eratá te Wianthemís")
    self:equals('mut.tr("ξένϝος")', mut.tr("ξένϝος"), "xénwos")
    self:equals('mut.tr("Πάτροϙλος")', mut.tr("Πάτροϙλος"), "Pátroḳlos")
end

function t:test99_Oedipus_Rex() -- rad 1182–1185 från tragedin "Oedipus Rex" av Sofokles
    self:equals('mut.tr("Ἰοὺ ἰού· τὰ πάντʼ ἂν ἐξήκοι σαφῆ.")', mut.tr("Ἰοὺ ἰού· τὰ πάντʼ ἂν ἐξήκοι σαφῆ."), "Iou ioú· ta pántʼ an exḗkoi safē.")
    self:equals('mut.tr("Ὦ φῶς, τελευταῖόν σε προσϐλέψαιμι νῦν,")', mut.tr("Ὦ φῶς, τελευταῖόν σε προσϐλέψαιμι νῦν,"), "Ō fōs, teleutaión se prosblépsaimi nyn,")
    self:equals('mut.tr("ὅστις πέφασμαι φύς τʼ ἀφʼ ὧν οὐ χρῆν, ξὺν οἷς τʼ")', mut.tr("ὅστις πέφασμαι φύς τʼ ἀφʼ ὧν οὐ χρῆν, ξὺν οἷς τʼ"), "hóstis péfasmai fýs tʼ afʼ hōn ou chrēn, xyn hois tʼ")
    self:equals('mut.tr("οὐ χρῆν ὁμιλῶν, οὕς τέ μʼ οὐκ ἔδει κτανών.")', mut.tr("οὐ χρῆν ὁμιλῶν, οὕς τέ μʼ οὐκ ἔδει κτανών."), "ou chrēn homilōn, hoús té mʼ ouk édei ktanṓn.")
end

return t