[liblouis-liblouisxml] [liblouis] r749 committed - Added lou_harnessGenerator, with example files....

  • From: liblouis@xxxxxxxxxxxxxx
  • To: liblouis-liblouisxml@xxxxxxxxxxxxx
  • Date: Fri, 20 Jul 2012 08:43:21 +0000

Revision: 749
Author:   mesar.hameed@xxxxxxxxx
Date:     Fri Jul 20 01:43:00 2012
Log:      Added lou_harnessGenerator, with example files.
Many thanks to Hammer Attila
http://code.google.com/p/liblouis/source/detail?r=749

Added:
 /trunk/tests/harnessSources
 /trunk/tests/harnessSources/Makefile.am
 /trunk/tests/harnessSources/en-GB-g2_harness_source.txt
 /trunk/tests/harnessSources/hu-hu-g1-hyph_harness_source.txt
 /trunk/tests/harnessSources/hu-hu-g1_harness_source.txt
 /trunk/tests/harnessSources/ta-ta-g1_harness_source.txt
 /trunk/tools/lou_harnessGenerator
Modified:
 /trunk/NEWS
 /trunk/configure.ac
 /trunk/tests/Makefile.am
 /trunk/tools/Makefile.am

=======================================
--- /dev/null
+++ /trunk/tests/harnessSources/Makefile.am     Fri Jul 20 01:43:00 2012
@@ -0,0 +1,6 @@
+EXTRA_DIST =                                   \
+       en-GB-g2_harness_source.txt             \
+       hu-hu-g1_harness_source.txt             \
+       hu-hu-g1-hyph_harness_source.txt        \
+       ta-ta-g1_harness_source.txt
+
=======================================
--- /dev/null
+++ /trunk/tests/harnessSources/en-GB-g2_harness_source.txt Fri Jul 20 01:43:00 2012
@@ -0,0 +1,27 @@
+tables: en-GB-g2.ctb
+
+comment: an example of a simple message being forward translated, and contractions expected.
+the cat sat on the mat
+
+comment: same as above example.
+to the moon
+
+comment: an example of where text should generally be contracted, accept at the point of the cursor. +comment: also specify where the computer cursor is at, and where we expect the braille cursor to be.
+brlCursorPos: 2 cursorPos: 4 mode: compbrlAtCursor
+you went to
+
+
+comment: an example of testing simple backtranslation.
+testmode: backtranslate
+the cat sat on the mat
+
+comment: same as above example.
+testmode: backtranslate
+to the moon
+
+comment: an example where the text to be backtranslated is grade 2, but the word at the cursor is grade 1.
+brlCursorPos: 2 cursorPos: 4 mode: compbrlAtCursor
+testmode: backtranslate
+you went to
+
=======================================
--- /dev/null
+++ /trunk/tests/harnessSources/hu-hu-g1-hyph_harness_source.txt Fri Jul 20 01:43:00 2012
@@ -0,0 +1,2317 @@
+tables: hu-hu-g1.ctb, hyph_hu_HU.dic
+
+testmode: hyphenate
+adásszerű
+
+testmode: hyphenate
+adásszünet
+
+testmode: hyphenate
+adósszámla
+
+testmode: hyphenate
+Agyagosszergény
+
+testmode: hyphenate
+agyaggyűrűiken
+
+testmode: hyphenate
+agyonnyom
+
+testmode: hyphenate
+agyonnyúzott
+
+testmode: hyphenate
+agyonnyűtt
+
+testmode: hyphenate
+ágyússzekerek
+
+testmode: hyphenate
+ájulásszerű
+
+testmode: hyphenate
+akácsövény
+
+testmode: hyphenate
+ákácsövény
+
+testmode: hyphenate
+alásszolgája
+
+testmode: hyphenate
+alásszolgájuk
+
+testmode: hyphenate
+alkalmazásszerver
+
+testmode: hyphenate
+állásszög
+
+testmode: hyphenate
+almásszürke
+
+testmode: hyphenate
+alvásszegény
+
+testmode: hyphenate
+alvásszükséglete
+
+testmode: hyphenate
+alvászavar
+
+testmode: hyphenate
+anyaggyőző
+
+testmode: hyphenate
+anyaggyűjtés
+
+testmode: hyphenate
+aranyosszőke
+
+testmode: hyphenate
+árboccsúcs
+
+testmode: hyphenate
+árbóccsúcs
+
+testmode: hyphenate
+árbocsudarat
+
+testmode: hyphenate
+arcüreggyulladás
+
+testmode: hyphenate
+arccsont
+
+testmode: hyphenate
+arcseb
+
+testmode: hyphenate
+arcsebe
+
+testmode: hyphenate
+arcsérülés
+
+testmode: hyphenate
+árgusszemű
+
+testmode: hyphenate
+árvízsújtotta
+
+testmode: hyphenate
+autósszemüveg
+
+testmode: hyphenate
+azonnyomban
+
+testmode: hyphenate
+bádoggyűjtemény
+
+testmode: hyphenate
+barnásszőke
+
+testmode: hyphenate
+barnásszőkét
+
+testmode: hyphenate
+barnásszürke
+
+testmode: hyphenate
+barnesszal
+
+testmode: hyphenate
+becslésszerűen
+
+testmode: hyphenate
+berendezésszerű
+
+testmode: hyphenate
+berendezésszett
+
+testmode: hyphenate
+Békésszentandrás
+
+testmode: hyphenate
+bélésszövet
+
+testmode: hyphenate
+bélyeggyűjtemény
+
+testmode: hyphenate
+bércsüveg
+
+testmode: hyphenate
+beteggyógyász
+
+testmode: hyphenate
+bilincszörgés
+
+testmode: hyphenate
+binsenggyökér
+
+testmode: hyphenate
+bohócsapkája
+
+testmode: hyphenate
+bonbonmeggy
+
+testmode: hyphenate
+borsszem
+
+testmode: hyphenate
+borsszóró
+
+testmode: hyphenate
+borzasszőrű
+
+testmode: hyphenate
+borzzsír
+
+testmode: hyphenate
+bőgésszerű
+
+testmode: hyphenate
+börtönnyelve
+
+testmode: hyphenate
+búcsújárásszerű
+
+testmode: hyphenate
+brekegésszerű
+
+testmode: hyphenate
+bronzsáska
+
+testmode: hyphenate
+bronzsáskák
+
+testmode: hyphenate
+bronzsasokkal
+
+testmode: hyphenate
+bronzsisak
+
+testmode: hyphenate
+bűnnyomok
+
+testmode: hyphenate
+chipseszacskó
+
+testmode: hyphenate
+csapásszám
+
+testmode: hyphenate
+csárdásszóló
+
+testmode: hyphenate
+csattanásszerű
+
+testmode: hyphenate
+csavarásszerű
+
+testmode: hyphenate
+csikósszámadó
+
+testmode: hyphenate
+csipkésszélű
+
+testmode: hyphenate
+csobbanásszerű
+
+testmode: hyphenate
+csuklásszerű
+
+testmode: hyphenate
+disszertáció
+
+testmode: hyphenate
+dobpergésszerűen
+
+testmode: hyphenate
+döggyapjú
+
+testmode: hyphenate
+dőlésszög
+
+testmode: hyphenate
+dörgésszerű
+
+testmode: hyphenate
+dörgésszerű
+
+testmode: hyphenate
+dragonyosszázad
+
+testmode: hyphenate
+dragonyoszászlóalj
+
+testmode: hyphenate
+droggyanús
+
+testmode: hyphenate
+dússzakállú
+
+testmode: hyphenate
+édesszájú
+
+testmode: hyphenate
+édesszesztestvér
+
+testmode: hyphenate
+égésszabály
+
+testmode: hyphenate
+égésszag
+
+testmode: hyphenate
+égésszám
+
+testmode: hyphenate
+égésszigetelés
+
+testmode: hyphenate
+egyenesszálú
+
+testmode: hyphenate
+egyenesszárnyúak
+
+testmode: hyphenate
+egyenesszög
+
+testmode: hyphenate
+egyezség
+
+testmode: hyphenate
+éhesszájat
+
+testmode: hyphenate
+ejtőernyősszárnyak
+
+testmode: hyphenate
+ejtőernyősszázad
+
+testmode: hyphenate
+ejtőernyőszászlóalj
+
+testmode: hyphenate
+ékesszólás
+
+testmode: hyphenate
+ékesszóló
+
+testmode: hyphenate
+ekhósszekér
+
+testmode: hyphenate
+ekhósszekerek
+
+testmode: hyphenate
+eleséggyűjtés
+
+testmode: hyphenate
+élesszemű
+
+testmode: hyphenate
+ellátásszerű
+
+testmode: hyphenate
+ellenállásszekrény
+
+testmode: hyphenate
+ellennyilatkozat
+
+testmode: hyphenate
+ellennyomás
+
+testmode: hyphenate
+elméncség
+
+testmode: hyphenate
+előírásszerű
+
+testmode: hyphenate
+elrémisszék
+
+testmode: hyphenate
+emberhússzagot
+
+testmode: hyphenate
+emelésszerű
+
+testmode: hyphenate
+erőforrászabáló
+
+testmode: hyphenate
+érccsapadék
+
+testmode: hyphenate
+érccsengés
+
+testmode: hyphenate
+érccsatorna
+
+testmode: hyphenate
+ércsalak
+
+testmode: hyphenate
+ércsas
+
+testmode: hyphenate
+ércselyem
+
+testmode: hyphenate
+ércsíp
+
+testmode: hyphenate
+ércsípjába
+
+testmode: hyphenate
+ércsípláda
+
+testmode: hyphenate
+ércsíptető
+
+testmode: hyphenate
+ércsisak
+
+testmode: hyphenate
+ércsodrony
+
+testmode: hyphenate
+érzékelésszint
+
+testmode: hyphenate
+ésszerű
+
+testmode: hyphenate
+eszközsor
+
+testmode: hyphenate
+eszközsorán
+
+testmode: hyphenate
+evészavar
+
+testmode: hyphenate
+fagyosszentek
+
+testmode: hyphenate
+fáklyászene
+
+testmode: hyphenate
+farkasszáj
+
+testmode: hyphenate
+farkasszem
+
+testmode: hyphenate
+farkasszemet
+
+testmode: hyphenate
+Farkassziget
+
+testmode: hyphenate
+fásszárú
+
+testmode: hyphenate
+fegyenccsoport
+
+testmode: hyphenate
+fegyencsapkát
+
+testmode: hyphenate
+fehéresszőke
+
+testmode: hyphenate
+fehéresszürke
+
+testmode: hyphenate
+feketésszürke
+
+testmode: hyphenate
+feleséggyilkos
+
+testmode: hyphenate
+felséggyilkolás
+
+testmode: hyphenate
+felfedezésszámba
+
+testmode: hyphenate
+felszerelésszettet
+
+testmode: hyphenate
+fertőzésszerű
+
+testmode: hyphenate
+filccsizma
+
+testmode: hyphenate
+filigránnyelű
+
+testmode: hyphenate
+fogasszeg
+
+testmode: hyphenate
+fogfájásszerű
+
+testmode: hyphenate
+foglalkozásszerű
+
+testmode: hyphenate
+foggyalu
+
+testmode: hyphenate
+foggyökér
+
+testmode: hyphenate
+foggyulladás
+
+testmode: hyphenate
+foggyűrű
+
+testmode: hyphenate
+forgásszabály
+
+testmode: hyphenate
+forrásszöveg
+
+testmode: hyphenate
+fosszínű
+
+testmode: hyphenate
+földcsuszamlásszerűen
+
+testmode: hyphenate
+fölélesszem
+
+testmode: hyphenate
+főzőkalánnyelet
+
+testmode: hyphenate
+fuvarosszekér
+
+testmode: hyphenate
+fúvósszerszám
+
+testmode: hyphenate
+fúvósszimfónia
+
+testmode: hyphenate
+fúvószenekar
+
+testmode: hyphenate
+fűtésszag
+
+testmode: hyphenate
+garaboncsereg
+
+testmode: hyphenate
+gázspray
+
+testmode: hyphenate
+gázsugár
+
+testmode: hyphenate
+gerincsérült
+
+testmode: hyphenate
+gerincsérv
+
+testmode: hyphenate
+ginszenggyökér
+
+testmode: hyphenate
+ginzenggyökér
+
+testmode: hyphenate
+Gombosszeg
+
+testmode: hyphenate
+gondviselésszerű
+
+testmode: hyphenate
+gőzsíp
+
+testmode: hyphenate
+gőzsugár
+
+testmode: hyphenate
+gőzszivattyú
+
+testmode: hyphenate
+gránátoszászlóalj
+
+testmode: hyphenate
+gúnyversszerző
+
+testmode: hyphenate
+gyalogosszázad
+
+testmode: hyphenate
+gyalogoszászlóalj
+
+testmode: hyphenate
+gyorsszárnyú
+
+testmode: hyphenate
+gyorsszekér
+
+testmode: hyphenate
+gyorsszűrő
+
+testmode: hyphenate
+gyújtásszabály
+
+testmode: hyphenate
+gyújtászsinór
+
+testmode: hyphenate
+gyűlésszíne
+
+testmode: hyphenate
+habarccsal
+
+testmode: hyphenate
+habitusszerűen
+
+testmode: hyphenate
+hadianyaggyár
+
+testmode: hyphenate
+hadsereggyűjtés
+
+testmode: hyphenate
+hajlásszög
+
+testmode: hyphenate
+hajósszekerce
+
+testmode: hyphenate
+hajósszemélyzet
+
+testmode: hyphenate
+hallászavar
+
+testmode: hyphenate
+halottasszekér
+
+testmode: hyphenate
+halottasszoba
+
+testmode: hyphenate
+halottasszobába
+
+testmode: hyphenate
+hamvasszőke
+
+testmode: hyphenate
+hamvasszürke
+
+testmode: hyphenate
+hanggyakorlat
+
+testmode: hyphenate
+hanggyűjtemény
+
+testmode: hyphenate
+hányásszag
+
+testmode: hyphenate
+haragoszöld
+
+testmode: hyphenate
+harcosszellem
+
+testmode: hyphenate
+harccselekmény
+
+testmode: hyphenate
+harccsoport
+
+testmode: hyphenate
+harcsor
+
+testmode: hyphenate
+hármasszámú
+
+testmode: hyphenate
+hársszén
+
+testmode: hyphenate
+hársszenet
+
+testmode: hyphenate
+hártyásszárnyú
+
+testmode: hyphenate
+hasisszagot
+
+testmode: hyphenate
+hatásszünet
+
+testmode: hyphenate
+házsárkodását
+
+testmode: hyphenate
+hegyesszög
+
+testmode: hyphenate
+hekusszagot
+
+testmode: hyphenate
+hegyszorosszerű
+
+testmode: hyphenate
+hentesszaktanfolyamát
+
+testmode: hyphenate
+hirdetésszöveg
+
+testmode: hyphenate
+hivatásszerűen
+
+testmode: hyphenate
+hízelkedésszámba
+
+testmode: hyphenate
+hörgésszerű
+
+testmode: hyphenate
+hősszínész
+
+testmode: hyphenate
+hősszövetség
+
+testmode: hyphenate
+hólyaggyulladás
+
+testmode: hyphenate
+húslevesszag
+
+testmode: hyphenate
+hússzaft
+
+testmode: hyphenate
+hússzag
+
+testmode: hyphenate
+hússzagú
+
+testmode: hyphenate
+hússzállítmány
+
+testmode: hyphenate
+hússzállító
+
+testmode: hyphenate
+hússzalonna
+
+testmode: hyphenate
+hússzekrény
+
+testmode: hyphenate
+hússzelet
+
+testmode: hyphenate
+Hússziget
+
+testmode: hyphenate
+hússzínű
+
+testmode: hyphenate
+hűvösszemű
+
+testmode: hyphenate
+ideggyengeség
+
+testmode: hyphenate
+ideggyógyászat
+
+testmode: hyphenate
+ideggyógyintézet
+
+testmode: hyphenate
+ideggyönge
+
+testmode: hyphenate
+ideggyötrő
+
+testmode: hyphenate
+ideggyulladás
+
+testmode: hyphenate
+identitászavar
+
+testmode: hyphenate
+időjárásszolgálat
+
+testmode: hyphenate
+imádsággyűjtemény
+
+testmode: hyphenate
+inasszerep
+
+testmode: hyphenate
+inasszerepet
+
+testmode: hyphenate
+inasszeretetet
+
+testmode: hyphenate
+indiánnyelv
+
+testmode: hyphenate
+ínnyújtó
+
+testmode: hyphenate
+ínnyújtót
+
+testmode: hyphenate
+ínyencség
+
+testmode: hyphenate
+írásszeretet
+
+testmode: hyphenate
+irtásszél
+
+testmode: hyphenate
+istennyila
+
+testmode: hyphenate
+járásszerű
+
+testmode: hyphenate
+jáspisszobor
+
+testmode: hyphenate
+jegeccsoport
+
+testmode: hyphenate
+jéggyártás
+
+testmode: hyphenate
+jelenésszerű
+
+testmode: hyphenate
+jelentésszerű
+
+testmode: hyphenate
+jelentésszint
+
+testmode: hyphenate
+jelzésszerű
+
+testmode: hyphenate
+jósszavai
+
+testmode: hyphenate
+jósszelleme
+
+testmode: hyphenate
+kabinnyíláson
+
+testmode: hyphenate
+kabinnyomás
+
+testmode: hyphenate
+kakasszó
+
+testmode: hyphenate
+kalapácszengés
+
+testmode: hyphenate
+kamionnyi
+
+testmode: hyphenate
+kaparásszerű
+
+testmode: hyphenate
+Kaposszekcső
+
+testmode: hyphenate
+Kaposszerdahely
+
+testmode: hyphenate
+kapusszoba
+
+testmode: hyphenate
+karosszék
+
+testmode: hyphenate
+kartácszápor
+
+testmode: hyphenate
+kartonnyi
+
+testmode: hyphenate
+kasszék
+
+testmode: hyphenate
+katalógusszám
+
+testmode: hyphenate
+katekizmusszerű
+
+testmode: hyphenate
+kavarásszerű
+
+testmode: hyphenate
+kavicsszerű
+
+testmode: hyphenate
+kavicszápor
+
+testmode: hyphenate
+kavicszátony
+
+testmode: hyphenate
+kavicszuzalék
+
+testmode: hyphenate
+kékesszürke
+
+testmode: hyphenate
+Kemenesszentmárton
+
+testmode: hyphenate
+Kemenesszentpéter
+
+testmode: hyphenate
+képmásszerű
+
+testmode: hyphenate
+képzésszerű
+
+testmode: hyphenate
+képzésszervezés
+
+testmode: hyphenate
+kerekesszék
+
+testmode: hyphenate
+keresésszolgáltató
+
+testmode: hyphenate
+kérésszerűen
+
+testmode: hyphenate
+késszúrás
+
+testmode: hyphenate
+kevésszavú
+
+testmode: hyphenate
+kevésszer
+
+testmode: hyphenate
+kerítésszaggató
+
+testmode: hyphenate
+kifejlesszem
+
+testmode: hyphenate
+kihívásszerű
+
+testmode: hyphenate
+kilenccsatorna
+
+testmode: hyphenate
+kilincszörgést
+
+testmode: hyphenate
+Kisszállás
+
+testmode: hyphenate
+kisszámú
+
+testmode: hyphenate
+Kisszeben
+
+testmode: hyphenate
+kisszék
+
+testmode: hyphenate
+kisszekrény
+
+testmode: hyphenate
+Kisszentmárton
+
+testmode: hyphenate
+kisszerű
+
+testmode: hyphenate
+Kissziget
+
+testmode: hyphenate
+kisszobában
+
+testmode: hyphenate
+kisszótár
+
+testmode: hyphenate
+Kiszombor
+
+testmode: hyphenate
+kiszögellésszerűen
+
+testmode: hyphenate
+Kiszsidány
+
+testmode: hyphenate
+kitörésszerű
+
+testmode: hyphenate
+kitüntetésszalagokat
+
+testmode: hyphenate
+kliensszoftver
+
+testmode: hyphenate
+kóccsomó
+
+testmode: hyphenate
+koldusszáj
+
+testmode: hyphenate
+koldusszakáll
+
+testmode: hyphenate
+koldusszegény
+
+testmode: hyphenate
+kolduszene
+
+testmode: hyphenate
+kommunikációsszoba
+
+testmode: hyphenate
+komposszesszor
+
+testmode: hyphenate
+komposszesszorátus
+
+testmode: hyphenate
+kormosszürke
+
***The diff for this file has been truncated for email.***
=======================================
--- /dev/null
+++ /trunk/tests/harnessSources/hu-hu-g1_harness_source.txt Fri Jul 20 01:43:00 2012
@@ -0,0 +1,3923 @@
+tables: hu-hu-g1.ctb
+
+adásszerű
+
+testmode: backtranslate
+adásszerű
+
+adásszünet
+
+testmode: backtranslate
+adásszünet
+
+adósszámla
+
+testmode: backtranslate
+adósszámla
+
+Agyagosszergény
+
+testmode: backtranslate
+Agyagosszergény
+
+agyaggyűrűiken
+
+testmode: backtranslate
+agyaggyűrűiken
+
+agyonnyom
+
+testmode: backtranslate
+agyonnyom
+
+agyonnyúzott
+
+testmode: backtranslate
+agyonnyúzott
+
+agyonnyűtt
+
+testmode: backtranslate
+agyonnyűtt
+
+ágyússzekerek
+
+testmode: backtranslate
+ágyússzekerek
+
+ájulásszerű
+
+testmode: backtranslate
+ájulásszerű
+
+akácsövény
+
+testmode: backtranslate
+akácsövény
+
+ákácsövény
+
+testmode: backtranslate
+ákácsövény
+
+alásszolgája
+
+testmode: backtranslate
+alásszolgája
+
+alásszolgájuk
+
+testmode: backtranslate
+alásszolgájuk
+
+alkalmazásszerver
+
+testmode: backtranslate
+alkalmazásszerver
+
+állásszög
+
+testmode: backtranslate
+állásszög
+
+almásszürke
+
+testmode: backtranslate
+almásszürke
+
+alvásszegény
+
+testmode: backtranslate
+alvásszegény
+
+alvásszükséglete
+
+testmode: backtranslate
+alvásszükséglete
+
+alvászavar
+
+testmode: backtranslate
+alvászavar
+
+anyaggyőző
+
+testmode: backtranslate
+anyaggyőző
+
+anyaggyűjtés
+
+testmode: backtranslate
+anyaggyűjtés
+
+aranyosszőke
+
+testmode: backtranslate
+aranyosszőke
+
+árboccsúcs
+
+testmode: backtranslate
+árboccsúcs
+
+árbóccsúcs
+
+testmode: backtranslate
+árbóccsúcs
+
+árbocsudarat
+
+testmode: backtranslate
+árbocsudarat
+
+arcüreggyulladás
+
+testmode: backtranslate
+arcüreggyulladás
+
+arccsont
+
+testmode: backtranslate
+arccsont
+
+arcseb
+
+testmode: backtranslate
+arcseb
+
+arcsebe
+
+testmode: backtranslate
+arcsebe
+
+arcsérülés
+
+testmode: backtranslate
+arcsérülés
+
+árgusszemű
+
+testmode: backtranslate
+árgusszemű
+
+árvízsújtotta
+
+testmode: backtranslate
+árvízsújtotta
+
+autósszemüveg
+
+testmode: backtranslate
+autósszemüveg
+
+azonnyomban
+
+testmode: backtranslate
+azonnyomban
+
+bádoggyűjtemény
+
+testmode: backtranslate
+bádoggyűjtemény
+
+barnásszőke
+
+testmode: backtranslate
+barnásszőke
+
+barnásszőkét
+
+testmode: backtranslate
+barnásszőkét
+
+barnásszürke
+
+testmode: backtranslate
+barnásszürke
+
+barnesszal
+
+testmode: backtranslate
+barnesszal
+
+becslésszerűen
+
+testmode: backtranslate
+becslésszerűen
+
+Békésszentandrás
+
+testmode: backtranslate
+Békésszentandrás
+
+bélésszövet
+
+testmode: backtranslate
+bélésszövet
+
+bélyeggyűjtemény
+
+testmode: backtranslate
+bélyeggyűjtemény
+
+bércsüveg
+
+testmode: backtranslate
+bércsüveg
+
+berendezésszerű
+
+testmode: backtranslate
+berendezésszerű
+
+berendezésszett
+
+testmode: backtranslate
+berendezésszett
+
+beteggyógyász
+
+testmode: backtranslate
+beteggyógyász
+
+bilincszörgés
+
+testmode: backtranslate
+bilincszörgés
+
+binsenggyökér
+
+testmode: backtranslate
+binsenggyökér
+
+bohócsapkája
+
+testmode: backtranslate
+bohócsapkája
+
+bonbonmeggy
+
+testmode: backtranslate
+bonbonmeggy
+
+borsszem
+
+testmode: backtranslate
+borsszem
+
+borsszóró
+
+testmode: backtranslate
+borsszóró
+
+borzasszőrű
+
+testmode: backtranslate
+borzasszőrű
+
+borzzsír
+
+testmode: backtranslate
+borzzsír
+
+bőgésszerű
+
+testmode: backtranslate
+bőgésszerű
+
+börtönnyelve
+
+testmode: backtranslate
+börtönnyelve
+
+brekegésszerű
+
+testmode: backtranslate
+brekegésszerű
+
+bronzsáska
+
+testmode: backtranslate
+bronzsáska
+
+bronzsáskák
+
+testmode: backtranslate
+bronzsáskák
+
+bronzsasokkal
+
+testmode: backtranslate
+bronzsasokkal
+
+bronzsisak
+
+testmode: backtranslate
+bronzsisak
+
+búcsújárásszerű
+
+testmode: backtranslate
+búcsújárásszerű
+
+bűnnyomok
+
+testmode: backtranslate
+bűnnyomok
+
+chipseszacskó
+
+testmode: backtranslate
+chipseszacskó
+
+csapásszám
+
+testmode: backtranslate
+csapásszám
+
+csárdásszóló
+
+testmode: backtranslate
+csárdásszóló
+
+csattanásszerű
+
+testmode: backtranslate
+csattanásszerű
+
+csavarásszerű
+
+testmode: backtranslate
+csavarásszerű
+
+csikósszámadó
+
+testmode: backtranslate
+csikósszámadó
+
+csipkésszélű
+
+testmode: backtranslate
+csipkésszélű
+
+csobbanásszerű
+
+testmode: backtranslate
+csobbanásszerű
+
+csuklásszerű
+
+testmode: backtranslate
+csuklásszerű
+
+disszertáció
+
+testmode: backtranslate
+disszertáció
+
+dobpergésszerűen
+
+testmode: backtranslate
+dobpergésszerűen
+
+döggyapjú
+
+testmode: backtranslate
+döggyapjú
+
+dőlésszög
+
+testmode: backtranslate
+dőlésszög
+
+dörgésszerű
+
+testmode: backtranslate
+dörgésszerű
+
+dörgésszerű
+
+testmode: backtranslate
+dörgésszerű
+
+dragonyosszázad
+
+testmode: backtranslate
+dragonyosszázad
+
+dragonyoszászlóalj
+
+testmode: backtranslate
+dragonyoszászlóalj
+
+droggyanús
+
+testmode: backtranslate
+droggyanús
+
+dússzakállú
+
+testmode: backtranslate
+dússzakállú
+
+édesszájú
+
+testmode: backtranslate
+édesszájú
+
+édesszesztestvér
+
+testmode: backtranslate
+édesszesztestvér
+
+égésszabály
+
+testmode: backtranslate
+égésszabály
+
+égésszag
+
+testmode: backtranslate
+égésszag
+
+égésszám
+
+testmode: backtranslate
+égésszám
+
+égésszigetelés
+
+testmode: backtranslate
+égésszigetelés
+
+egyenesszálú
+
+testmode: backtranslate
+egyenesszálú
+
+egyenesszárnyúak
+
+testmode: backtranslate
+egyenesszárnyúak
+
+egyenesszög
+
+testmode: backtranslate
+egyenesszög
+
+egyezség
+
+testmode: backtranslate
+egyezség
+
+éhesszájat
+
+testmode: backtranslate
+éhesszájat
+
+ejtőernyősszárnyak
+
+testmode: backtranslate
+ejtőernyősszárnyak
+
+ejtőernyősszázad
+
+testmode: backtranslate
+ejtőernyősszázad
+
+ejtőernyőszászlóalj
+
+testmode: backtranslate
+ejtőernyőszászlóalj
+
+ékesszólás
+
+testmode: backtranslate
+ékesszólás
+
+ékesszóló
+
+testmode: backtranslate
+ékesszóló
+
+ekhósszekér
+
+testmode: backtranslate
+ekhósszekér
+
+ekhósszekerek
+
+testmode: backtranslate
+ekhósszekerek
+
+eleséggyűjtés
+
+testmode: backtranslate
+eleséggyűjtés
+
+élesszemű
+
+testmode: backtranslate
+élesszemű
+
+ellátásszerű
+
+testmode: backtranslate
+ellátásszerű
+
+ellenállásszekrény
+
+testmode: backtranslate
+ellenállásszekrény
+
+ellennyilatkozat
+
+testmode: backtranslate
+ellennyilatkozat
+
+ellennyomás
+
+testmode: backtranslate
+ellennyomás
+
+elméncség
+
+testmode: backtranslate
+elméncség
+
+előírásszerű
+
+testmode: backtranslate
+előírásszerű
+
+elrémisszék
+
+testmode: backtranslate
+elrémisszék
+
+emberhússzagot
+
+testmode: backtranslate
+emberhússzagot
+
+emelésszerű
+
+testmode: backtranslate
+emelésszerű
+
+érccsapadék, érccsengés, érccsatorna
+
+testmode: backtranslate
+érccsapadék, érccsengés, érccsatorna
+
+ércsalak
+
+testmode: backtranslate
+ércsalak
+
+ércsas
+
+testmode: backtranslate
+ércsas
+
+ércselyem
+
+testmode: backtranslate
+ércselyem
+
+ércsíp, ércsípjába, ércsípláda
+
+testmode: backtranslate
+ércsíp, ércsípjába, ércsípláda
+
+ércsíptető
+
+testmode: backtranslate
+ércsíptető
+
+ércsisak
+
+testmode: backtranslate
+ércsisak
+
+ércsodrony
+
+testmode: backtranslate
+ércsodrony
+
+erőforrászabáló
+
+testmode: backtranslate
+erőforrászabáló
+
+érzékelésszint
+
+testmode: backtranslate
+érzékelésszint
+
+ésszerű
+
+testmode: backtranslate
+ésszerű
+
+eszközsor, eszközsorán
+
+testmode: backtranslate
+eszközsor, eszközsorán
+
+evészavar
+
+testmode: backtranslate
+evészavar
+
+fagyosszentek
+
+testmode: backtranslate
+fagyosszentek
+
+fáklyászene
+
+testmode: backtranslate
+fáklyászene
+
+farkasszáj
+
+testmode: backtranslate
+farkasszáj
+
+farkasszem
+
+testmode: backtranslate
+farkasszem
+
+farkasszemet
+
+testmode: backtranslate
+farkasszemet
+
+Farkassziget,
+
+testmode: backtranslate
+Farkassziget,
+
+fásszárú
+
+testmode: backtranslate
+fásszárú
+
+fegyenccsoport
+
+testmode: backtranslate
+fegyenccsoport
+
+fegyencsapkát
+
+testmode: backtranslate
+fegyencsapkát
+
+fehéresszőke, fehéresszürke
+
+testmode: backtranslate
+fehéresszőke, fehéresszürke
+
+feketésszürke
+
+testmode: backtranslate
+feketésszürke
+
+feleséggyilkos
+
+testmode: backtranslate
+feleséggyilkos
+
+felfedezésszámba
+
+testmode: backtranslate
+felfedezésszámba
+
+felséggyilkolás
+
+testmode: backtranslate
+felséggyilkolás
+
+felszerelésszettet
+
+testmode: backtranslate
+felszerelésszettet
+
+fertőzésszerű
+
+testmode: backtranslate
+fertőzésszerű
+
+filccsizma
+
+testmode: backtranslate
+filccsizma
+
+filigránnyelű
+
+testmode: backtranslate
+filigránnyelű
+
+fogasszeg
+
+testmode: backtranslate
+fogasszeg
+
+fogfájásszerű
+
+testmode: backtranslate
+fogfájásszerű
+
+foglalkozásszerű
+
+testmode: backtranslate
+foglalkozásszerű
+
+foggyalu
+
+testmode: backtranslate
+foggyalu
+
+foggyökér
+
+testmode: backtranslate
+foggyökér
+
+foggyulladás
+
+testmode: backtranslate
+foggyulladás
+
+foggyűrű
+
+testmode: backtranslate
+foggyűrű
+
+forgásszabály
+
+testmode: backtranslate
+forgásszabály
+
+formánsszintetizátorok
+
+testmode: backtranslate
+formánsszintetizátorok
+
+forrásszöveg
+
+testmode: backtranslate
+forrásszöveg
+
+fosszínű
+
+testmode: backtranslate
+fosszínű
+
+földcsuszamlásszerűen
+
+testmode: backtranslate
+földcsuszamlásszerűen
+
+fölélesszem
+
+testmode: backtranslate
+fölélesszem
+
+főzőkalánnyelet
+
+testmode: backtranslate
+főzőkalánnyelet
+
+fuvarosszekér
+
+testmode: backtranslate
+fuvarosszekér
+
+fúvósszerszám
+
+testmode: backtranslate
+fúvósszerszám
+
+fúvósszimfónia
+
+testmode: backtranslate
+fúvósszimfónia
+
+fúvószenekar
+
+testmode: backtranslate
+fúvószenekar
+
+fűtésszag
+
+testmode: backtranslate
+fűtésszag
+
+garaboncsereg
+
+testmode: backtranslate
+garaboncsereg
+
+gázspray
+
+testmode: backtranslate
+gázspray
+
+gázsugár
+
+testmode: backtranslate
+gázsugár
+
+gerincsérült
+
+testmode: backtranslate
+gerincsérült
+
+gerincsérv
+
+testmode: backtranslate
+gerincsérv
+
+ginszenggyökér
+
+testmode: backtranslate
+ginszenggyökér
+
+ginzenggyökér
+
+testmode: backtranslate
+ginzenggyökér
+
+Gombosszeg
+
+testmode: backtranslate
+Gombosszeg
+
+gondviselésszerű
+
+testmode: backtranslate
+gondviselésszerű
+
+gőzsíp
+
+testmode: backtranslate
+gőzsíp
+
+gőzsugár
+
+testmode: backtranslate
+gőzsugár
+
+gőzszivattyú
+
+testmode: backtranslate
+gőzszivattyú
+
+gránátoszászlóalj
+
+testmode: backtranslate
+gránátoszászlóalj
+
+gúnyversszerző
+
+testmode: backtranslate
+gúnyversszerző
+
+gyalogosszázad
+
+testmode: backtranslate
+gyalogosszázad
+
+gyalogoszászlóalj,
+
+testmode: backtranslate
+gyalogoszászlóalj,
+
+gyorsszárnyú
+
+testmode: backtranslate
+gyorsszárnyú
+
+gyorsszekér
+
+testmode: backtranslate
+gyorsszekér
+
+gyorsszűrő
+
+testmode: backtranslate
+gyorsszűrő
+
+gyújtásszabály
+
+testmode: backtranslate
+gyújtásszabály
+
+gyújtászsinór
+
+testmode: backtranslate
+gyújtászsinór
+
+gyűlésszíne
+
+testmode: backtranslate
+gyűlésszíne
+
+habarccsal
+
+testmode: backtranslate
+habarccsal
+
+habitusszerűen
+
+testmode: backtranslate
+habitusszerűen
+
+hadianyaggyár
+
+testmode: backtranslate
+hadianyaggyár
+
+hadsereggyűjtés
+
+testmode: backtranslate
+hadsereggyűjtés
+
+hajlásszög
+
+testmode: backtranslate
+hajlásszög
+
+hajósszekerce
+
+testmode: backtranslate
+hajósszekerce
+
+hajósszemélyzet
+
+testmode: backtranslate
+hajósszemélyzet
+
+hallászavar
+
+testmode: backtranslate
+hallászavar
+
+halottasszekér
+
+testmode: backtranslate
+halottasszekér
+
+halottasszoba
+
+testmode: backtranslate
+halottasszoba
+
+halottasszobába
+
+testmode: backtranslate
+halottasszobába
+
+hamvasszőke
+
+testmode: backtranslate
+hamvasszőke
+
+hamvasszürke
+
+testmode: backtranslate
+hamvasszürke
+
+hanggyakorlat
+
+testmode: backtranslate
+hanggyakorlat
+
+hányásszag
***The diff for this file has been truncated for email.***
=======================================
--- /dev/null
+++ /trunk/tests/harnessSources/ta-ta-g1_harness_source.txt Fri Jul 20 01:43:00 2012
@@ -0,0 +1,25 @@
+tables: ta-ta-g1.ctb
+
+இ
+
+ப
+
+பி
+
+க்
+
+ ஸ்ரீ
+
+பஸ்ரீ
+
+ க்ஷ
+
+க்ஷ்.
+
+“
+
+”
+
+‘
+
+’
=======================================
--- /dev/null
+++ /trunk/tools/lou_harnessGenerator   Fri Jul 20 01:43:00 2012
@@ -0,0 +1,285 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+# Liblouis test harness generator
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Library General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Library General Public License for more details.
+#
+# You should have received a copy of the GNU Library General Public
+# License along with this library; if not, write to the
+# Free Software Foundation, Inc., Franklin Street, Fifth Floor,
+# Boston MA  02110-1301 USA.
+#
+# Copyright (c) 2012, Hammer Attila, Mesar Hameed.
+
+"""Liblouis test harness generator:
+This is a tool to help to generate harness files.
+You are expected to read the generated output, paying special attension to the "input" and "output" lines, and correct the fields, according to
+the formal braille standard for your table.
+The reason why they might contain errors is because the liblouis tables may not be conforming with the formal braille standard, and the purpose +of the harness files is to catch these edge cases so that the liblouis tables can be improved. +For input examples please have a look at the files in the tests/harnessSources directory in top of the Liblouis source tree.
+
+@author: Hammer Attila <hammer.attila@xxxxxxxxxxx>
+@author: Mesar Hameed <mhameed@xxxxxxxxxxxxx>
+"""
+
+import os, sys, argparse, json
+from louis import translate, hyphenate
+from louis import noContractions, compbrlAtCursor, dotsIO, comp8Dots, pass1Only, compbrlLeftCursor, otherTrans, ucBrl
+
+modes = {
+    'noContractions': noContractions,
+    'compbrlAtCursor': compbrlAtCursor,
+    'dotsIO': dotsIO,
+    'comp8Dots': comp8Dots,
+    'pass1Only': pass1Only,
+    'compbrlLeftCursor': compbrlLeftCursor,
+    'otherTrans': otherTrans,
+    'ucBrl': ucBrl
+}
+
+test_types = {
+    'translate': 'translate',
+    'backtranslate': 'backtranslate',
+    'hyphenate': 'hyphenate'
+}
+
+# all the possible flags that a testcase can override
+possibleFlags = ['brlCursorPos', 'cursorPos', 'mode', 'testmode', 'comment']
+
+# check what version of python we are running under.
+PY2 = sys.version_info[0] == 2
+
+# Temporary hack we stores tables possible translation table paths
+possible_table_paths = ["tables", "tests/tables", "/usr/share/liblouis/tables", "/usr/local/share/liblouis/tables"]
+
+# Helper function to dinamical generate output harness filename
+def generate_output_file(translation_table):
+    if args.unicodebraille or "unicode.dis" in translation_table:
+ outfile = os.path.splitext(os.path.basename(translation_table[1]))[0]+'_harness.txt'
+        if "hyph" in lines[0]:
+ outfile = os.path.splitext(os.path.basename(translation_table[1]))[0]+'-hyph_harness.txt'
+    else:
+ outfile = os.path.splitext(os.path.basename(translation_table[0]))[0]+'_harness.txt'
+        if "hyph" in lines[0]:
+ outfile = os.path.splitext(os.path.basename(translation_table[0]))[0]+'-hyph_harness.txt'
+
+    return outfile
+
+# Helper function: this function generating translation table list from the source harness file tables flag
+def generate_translation_table_list(source_line, infile):
+    source_line=source_line.replace("tables: ", "")
+    source_line = source_line.replace(",", "")
+    source_line=source_line.replace("\n", "")
+    translation_table = source_line.split(" ")
+    if args.unicodebraille and "unicode.dis" not in translation_table:
+        translation_table.insert(0, "unicode.dis")
+    for table in translation_table:
+        # This counter stores how many places not existing a table
+        not_existing_a_table = 0
+        for path in possible_table_paths:
+            if not os.path.exists(path+'/'+table):
+                not_existing_a_table = not_existing_a_table +1
+        if not_existing_a_table == len(possible_table_paths):
+ print ("The %s translation table doesn't exists, %s input file skipped." %(table, infile))
+            return ""
+    return translation_table
+
+# Helper function. This function reading input file.
+def read_input_file(infile):
+    f=open(infile, 'r')
+    lines=f.readlines()
+    f.close()
+    return lines
+
+# Helper function. This function generating the empty json dictionary with containing only translation tables and end tests block.
+def generate_empty_dictionary(translation_table):
+    test={}
+    test['tables'] = translation_table
+    test['tests'] = []
+    return test
+
+# helper function, we always need to encode into utf-8 encoded strings,
+# so make sure we have that independantly of python.
+def u(a):
+    if PY2:
+        return a.encode("utf-8")
+    return a
+
+# helper function, we always need to decode utf-8 encoded strings,
+# so make sure we have that independantly of python.
+def ud(a):
+    if PY2:
+        return a.decode("utf-8")
+    return a
+
+def hyphenateword(word, tables, mode):
+    try:
+ # FIXME: liblouis currently crashes if we dont add space at end of the word, probably due to a counter running past the end of the string. + # medium/longterm this hack should be removed, and the root of the problem found/resolved.
+        hyphen_mask=hyphenate(tables, word+' ', mode)
+    except RuntimeError:
+        print('Hyphenation not possible, a problem occured.')
+        return ""
+
+    # Next code line returning the generated hyphenated word.
+ # FIXME: why on python 2 do we need to remove the last item, and on python3 it is needed?
+    # i.e. in python2 word and hyphen_mask not of the same length.
+    if PY2:
+ return "".join( map(lambda a,b: "-"+a if b=='1' else a, word, hyphen_mask)[:-1] )
+    else:
+ return "".join( list(map(lambda a,b: "-"+a if b=='1' else a, word, hyphen_mask)) )
+
+# Helper function, temporary need generating both translate, backtranslate and hyphenate test dictionaryes flags block
+def generate_flags_block():
+    translate_tests={}
+    backtranslate_tests = {}
+    hyphenate_tests = {}
+    backtranslate_tests['flags'] = {}
+    backtranslate_tests['flags']['testmode'] = 'backtranslate'
+    backtranslate_tests['data'] = []
+    hyphenate_tests['flags'] = {}
+    hyphenate_tests['flags']['testmode'] = 'hyphenate'
+    hyphenate_tests['data'] = []
+    translate_tests['data'] = []
+    if args.unicodebraille:
+        backtranslate_tests['flags']['outputUniBrl'] = args.unicodebraille
+        hyphenate_tests['flags']['outputUniBrl'] = args.unicodebraille
+        translate_tests['flags'] = {}
+        translate_tests['flags']['outputUniBrl'] = args.unicodebraille
+    return translate_tests, backtranslate_tests, hyphenate_tests
+
+# Helper function to generate both translate, backtranslate and hyphenate tests temporary dictionary data +def generate_data(lines, translate_tests, backtranslate_tests, hyphenate_tests, infile):
+    limit = len(lines)
+ # following two variable need initializing before the loop, and end of the loop, because inside the loop need doing some continue code line. We not want to lost already processed data inside the loop.
+    testmode='translate'
+    testcase={}
+
+    for i in range(limit):
+        lines[i]=lines[i].replace('\n', '')
+        # skip empty lines in the source
+        if lines[i] == '': continue
+
+ # If it is the first comment within the testcase, then add it, if it is a long comment split over multiple lines, then append it to the
+        # testcase comment field.
+ if (lines[i].startswith('Comment: ')) or (lines[i].startswith('comment: ')):
+            if 'comment' not in testcase:
+                testcase['comment'] = []
+            testcase['comment'].append(lines[i][len('Comment: '):])
+            continue
+
+        # does this line contain any processing flags
+        if any(x in lines[i] for x in possibleFlags):
+            optionlist=lines[i].split(' ')
+            for i in range(0, len(optionlist), 2):
+                optionlist[i]=optionlist[i].replace(":", "")
+                optionlist[i+1]=optionlist[i+1].replace(",", "")
+                if optionlist[i] in ["brlCursorPos", "cursorPos"]:
+                    testcase[optionlist[i]] = int(optionlist[i+1])
+ elif optionlist[i] == 'testmode' and optionlist[i+1] in test_types:
+                    testmode = optionlist[i+1]
+                elif optionlist[i] == 'mode' and optionlist[i+1] in modes:
+                    testcase[str(optionlist[i])]=str(optionlist[i+1])
+            continue
+
+        # what liblouis translation mode bits should be set
+        mode=0
+        if 'mode' in testcase:
+            mode=modes[testcase['mode']]
+
+        cursorPos=0
+        if 'cursorPos' in testcase:
+            cursorPos=testcase['cursorPos']
+
+ # By now we have finnished processing testcase options and we know what we want to do.
+        # so depending on testmode, do the needed work.
+        if testmode == 'hyphenate':
+ hyphenated_word = hyphenateword(ud(lines[i]), translation_table, mode)
+            if hyphenated_word == "":
+ return translate_tests, backtranslate_tests, hyphenate_tests
+        try:
+ brl = translate(translation_table, ud(lines[i]), None, cursorPos, mode)[0]
+        except RuntimeError:
+ print ("Translate or backtranslate impossible, a problem occured. \n%s input file skipped." %infile)
+            return translate_tests, backtranslate_tests, hyphenate_tests
+        brl=brl.replace("", "\u007f")
+        if testmode == 'translate':
+            testcase['input']=lines[i]
+            testcase['output']=u(brl)
+            translate_tests['data'].append(testcase)
+        elif testmode == 'backtranslate':
+            testcase['input']=u(brl)
+            testcase['output']=lines[i]
+            backtranslate_tests['data'].append(testcase)
+        if testmode == 'hyphenate':
+            testcase['input'] = lines[i]
+            testcase['output'] = u(hyphenated_word)
+            hyphenate_tests['data'].append(testcase)
+
+ # Again two code line initializing testmode and testcase variables, because a testcase processing full ended.
+        testmode='translate'
+        testcase={}
+
+    return translate_tests, backtranslate_tests, hyphenate_tests
+
+# Helper function to generate final test harness
+def generate_final_content(lines):
+    generated_testcases=0
+ translate_tests, backtranslate_tests, hyphenate_tests = generate_flags_block() + translate_tests, backtranslate_tests, hyphenate_tests = generate_data(lines, translate_tests, backtranslate_tests, hyphenate_tests, i)
+    if len(backtranslate_tests['data'])>0:
+        test['tests'].append(backtranslate_tests)
+ generated_testcases=generated_testcases+len(backtranslate_tests['data'])
+    if len(translate_tests['data'])>0:
+        test['tests'].append(translate_tests)
+ generated_testcases=generated_testcases+len(translate_tests['data'])
+    if len(hyphenate_tests['data'])>0:
+        test['tests'].append(hyphenate_tests)
+ generated_testcases=generated_testcases+len(hyphenate_tests['data'])
+    return generated_testcases
+
+#Main program
+# Add support for command line arguments.
+parser = argparse.ArgumentParser(description='Test harness file generator')
+parser.add_argument('-u',action="store_true",dest="unicodebraille",default=False,help='Use unicode braille for output.') +parser.add_argument('infiles',action='store',nargs='+',help='Filenames where the source text is stored, wildcards are supported.')
+args = parser.parse_args()
+# Examining existing the gived input files or not.
+for i in args.infiles:
+    if not os.path.exists(i):
+        print(('Error: %s file doesn\'t exist.') %i)
+        sys.exit()
+# End of command line arguments parsing.
+
+# Begin processing input files
+for i in args.infiles:
+    lines=read_input_file(i)
+    if not lines[0].startswith("tables: "):
+ print ("The source file %s doesn't declare which translation tables to be used, skipping." %i)
+        continue
+    print("processing %s source file..." %i)
+    translation_table = generate_translation_table_list(lines[0], i)
+    if translation_table !="":
+        outfile=generate_output_file(translation_table)
+        lines.remove(lines[0])
+ # generating primary empty dictionary, with containing only translation tables.
+        test = generate_empty_dictionary(translation_table)
+        generatedtestcases=generate_final_content(lines)
+        if generatedtestcases != 0:
+            try:
+                g=open(outfile, 'w')
+ json.dump(test, g, indent=2, sort_keys=True, ensure_ascii=False)
+                g.close()
+            except IOError:
+ print ("You do not have write permission to the current directory, harness generation aborted.")
+                sys.exit()
+ print("Generated %d testcases, please carefully inspect %s, \nand do any needed manual corrections." %(generatedtestcases, outfile))
=======================================
--- /trunk/NEWS Tue Jul 10 00:14:48 2012
+++ /trunk/NEWS Fri Jul 20 01:43:00 2012
@@ -19,6 +19,10 @@
are only run if either Python 2.x or 3.x with the related nose python module is installed on the system. See the
     documentation for more information.
     Thanks to Mesar Hameed.
+*** Add a test harness generator
+ A harness generator that uses simple text files with a little formatting to help to generate the json harness files. + The purpose of this tool is to make it much easier and faster to add checks for a given table. + You are expected to read the generated harness file and make necessary changes, the tool only helps you to get the tests into the harness format, not check their validity.
 *** Support for Python 3 in the Python bindings
     The Python bindings now work for both Python 2 and Python 3.
     Thanks to Michael Whapples.
=======================================
--- /trunk/configure.ac Thu May 31 08:07:11 2012
+++ /trunk/configure.ac Fri Jul 20 01:43:00 2012
@@ -121,6 +121,7 @@
         tests/tables/moreTables/Makefile
         tests/doctests/Makefile
         tests/harness/Makefile
+        tests/harnessSources/Makefile
        python/Makefile
        python/louis/Makefile
         tools/Makefile
=======================================
--- /trunk/tests/Makefile.am    Thu Jun  7 04:33:00 2012
+++ /trunk/tests/Makefile.am    Fri Jul 20 01:43:00 2012
@@ -1,4 +1,4 @@
-SUBDIRS = tables doctests harness
+SUBDIRS = tables doctests harness harnessSources

 AM_CPPFLAGS = -I$(top_srcdir)/liblouis

=======================================
--- /trunk/tools/Makefile.am    Tue Nov 10 04:55:27 2009
+++ /trunk/tools/Makefile.am    Fri Jul 20 01:43:00 2012
@@ -24,3 +24,5 @@
        lou_debug.c
 lou_translate_SOURCES = \
        lou_translate.c
+
+bin_SCRIPTS = lou_harnessGenerator
���*m���^���޶�h�hiحjwe�y,��k�7����z���m����n)b�'����

Other related posts:

  • » [liblouis-liblouisxml] [liblouis] r749 committed - Added lou_harnessGenerator, with example files.... - liblouis