[liblouis-liblouisxml] [liblouis] r682 committed - runharnessV2.py, harness/*_harness.txt:...

  • From: liblouis@xxxxxxxxxxxxxx
  • To: liblouis-liblouisxml@xxxxxxxxxxxxx
  • Date: Fri, 08 Jun 2012 12:54:36 +0000

Revision: 682
Author:   mesar.hameed@xxxxxxxxx
Date:     Fri Jun  8 05:54:20 2012
Log:      runharnessV2.py, harness/*_harness.txt:

Migrate to a new json structure, to remove redundancy.
Each section of tests can set flags which will be used for all tests in that section.

todo:
* Cleanup variable names.
* Ensure that backtranslate tests work.
* Add functionality for hyphenation tests, and an example.
* Update documentation to reflect all the changes.
http://code.google.com/p/liblouis/source/detail?r=682

Modified:
 /trunk/tests/harness/en-GB-g2_harness.txt
 /trunk/tests/harness/hu1_harness.txt
 /trunk/tests/harness/letterDefTest_harness.txt
 /trunk/tests/harness/ta-ta-g1_harness.txt
 /trunk/tests/runHarnessV2.py

=======================================
--- /trunk/tests/harness/en-GB-g2_harness.txt   Wed May 30 10:00:22 2012
+++ /trunk/tests/harness/en-GB-g2_harness.txt   Fri Jun  8 05:54:20 2012
@@ -1,20 +1,46 @@
-{
-    "table": "en-GB-g2.ctb",
-    "tests": [
-        {
-            "brl": "! cat sat on ! mat",
-            "txt": "the cat sat on the mat"
+{
+  "sections": [
+{
+"tests": [
+        {
+            "output": "! cat sat on ! mat",
+            "input": "the cat sat on the mat"
         },
         {
-            "brl": "6! moon",
-            "txt": "to the moon"
+            "output": "6! moon",
+            "input": "to the moon"
         },
         {
             "brlCursorPos": 2,
-            "brl": "y went to",
+            "output": "y went to",
             "cursorPos": 4,
             "mode": "compbrlAtCursor",
-            "txt": "you went to"
-        }
-    ]
-}
+            "input": "you went to"
+        }
+]
+},
+    {
+      "flags": {
+        "testmode": "backtranslate"
+      },
+      "tests": [
+        {
+          "input": "! cat sat on ! mat",
+          "output": "the cat sat on the mat"
+        },
+        {
+          "input": "6! moon",
+          "output": "to the moon"
+        },
+        {
+          "brlCursorPos": 2,
+          "cursorPos": 4,
+          "input": "y went to",
+          "mode": "compbrlAtCursor",
+          "output": "you went to"
+        }
+      ]
+    }
+  ],
+  "table": "en-GB-g2.ctb"
+}
=======================================
--- /trunk/tests/harness/hu1_harness.txt        Tue Jun  5 03:13:35 2012
+++ /trunk/tests/harness/hu1_harness.txt        Fri Jun  8 05:54:20 2012
@@ -1,7131 +1,6329 @@
-{
-    "table": "hu1.ctb",
-    "tests": [
-        {
-            "brl": "ad\"s5er}",
-            "txt": "adásszerű"
-        },
-        {
-            "brl": "ad\"s5er}",
-            "testmode": "backtranslate",
-            "txt": "adásszerű"
-        },
-        {
-            "brl": "ad\"s5{net",
-            "txt": "adásszünet"
-        },
-        {
-            "brl": "ad\"s5{net",
-            "testmode": "backtranslate",
-            "txt": "adásszünet"
-        },
-        {
-            "brl": "ad9s5\"mla",
-            "txt": "adósszámla"
-        },
-        {
-            "brl": "ad9s5\"mla",
-            "testmode": "backtranslate",
-            "txt": "adósszámla"
-        },
-        {
-            "brl": "$a4agos5erg16",
-            "brlCursorPos": 1,
-            "txt": "Agyagosszergény"
-        },
-        {
-            "brl": "$a4agos5erg16",
-            "brlCursorPos": 1,
-            "testmode": "backtranslate",
-            "txt": "Agyagosszergény"
-        },
-        {
-            "brl": "a4ag4}r}iken",
-            "txt": "agyaggyűrűiken"
-        },
-        {
-            "brl": "a4ag4}r}iken",
-            "testmode": "backtranslate",
-            "txt": "agyaggyűrűiken"
-        },
-        {
-            "brl": "a4on6om",
-            "txt": "agyonnyom"
-        },
-        {
-            "brl": "a4on6om",
-            "testmode": "backtranslate",
-            "txt": "agyonnyom"
-        },
-        {
-            "brl": "a4on602ott",
-            "txt": "agyonnyúzott"
-        },
-        {
-            "brl": "a4on602ott",
-            "testmode": "backtranslate",
-            "txt": "agyonnyúzott"
-        },
-        {
-            "brl": "a4on6}tt ",
-            "txt": "agyonnyűtt "
-        },
-        {
-            "brl": "a4on6}tt ",
-            "testmode": "backtranslate",
-            "txt": "agyonnyűtt "
-        },
-        {
-            "brl": "\"40s5ekerek",
-            "txt": "ágyússzekerek"
-        },
-        {
-            "brl": "\"40s5ekerek",
-            "testmode": "backtranslate",
-            "txt": "ágyússzekerek"
-        },
-        {
-            "brl": "\"jul\"s5er}",
-            "txt": "ájulásszerű"
-        },
-        {
-            "brl": "\"jul\"s5er}",
-            "testmode": "backtranslate",
-            "txt": "ájulásszerű"
-        },
-        {
-            "brl": "ak\"csqv16",
-            "txt": "akácsövény"
-        },
-        {
-            "brl": "ak\"csqv16",
-            "testmode": "backtranslate",
-            "txt": "akácsövény"
-        },
-        {
-            "brl": "\"k\"csqv16",
-            "txt": "ákácsövény"
-        },
-        {
-            "brl": "\"k\"csqv16",
-            "testmode": "backtranslate",
-            "txt": "ákácsövény"
-        },
-        {
-            "brl": "al\"s5olg\"ja",
-            "txt": "alásszolgája"
-        },
-        {
-            "brl": "al\"s5olg\"ja",
-            "testmode": "backtranslate",
-            "txt": "alásszolgája"
-        },
-        {
-            "brl": "al\"s5olg\"juk ",
-            "txt": "alásszolgájuk "
-        },
-        {
-            "brl": "al\"s5olg\"juk ",
-            "testmode": "backtranslate",
-            "txt": "alásszolgájuk "
-        },
-        {
-            "brl": "alkalma2\"s5erver",
-            "txt": "alkalmazásszerver"
-        },
-        {
-            "brl": "alkalma2\"s5erver",
-            "testmode": "backtranslate",
-            "txt": "alkalmazásszerver"
-        },
-        {
-            "brl": "\"ll\"s5qg",
-            "txt": "állásszög"
-        },
-        {
-            "brl": "\"ll\"s5qg",
-            "testmode": "backtranslate",
-            "txt": "állásszög"
-        },
-        {
-            "brl": "alm\"s5{rke",
-            "txt": "almásszürke"
-        },
-        {
-            "brl": "alm\"s5{rke",
-            "testmode": "backtranslate",
-            "txt": "almásszürke"
-        },
-        {
-            "brl": "alv\"s5eg16",
-            "txt": "alvásszegény"
-        },
-        {
-            "brl": "alv\"s5eg16",
-            "testmode": "backtranslate",
-            "txt": "alvásszegény"
-        },
-        {
-            "brl": "alv\"s5{ks1glete",
-            "txt": "alvásszükséglete"
-        },
-        {
-            "brl": "alv\"s5{ks1glete",
-            "testmode": "backtranslate",
-            "txt": "alvásszükséglete"
-        },
-        {
-            "brl": "alv\"s2avar",
-            "txt": "alvászavar"
-        },
-        {
-            "brl": "alv\"s2avar",
-            "testmode": "backtranslate",
-            "txt": "alvászavar"
-        },
-        {
-            "brl": "a6ag4727",
-            "txt": "anyaggyőző"
-        },
-        {
-            "brl": "a6ag4727",
-            "testmode": "backtranslate",
-            "txt": "anyaggyőző"
-        },
-        {
-            "brl": "a6ag4}jt1s",
-            "txt": "anyaggyűjtés"
-        },
-        {
-            "brl": "a6ag4}jt1s",
-            "testmode": "backtranslate",
-            "txt": "anyaggyűjtés"
-        },
-        {
-            "brl": "ara6os57ke",
-            "txt": "aranyosszőke"
-        },
-        {
-            "brl": "ara6os57ke",
-            "testmode": "backtranslate",
-            "txt": "aranyosszőke"
-        },
-        {
-            "brl": "\"rboc303",
-            "txt": "árboccsúcs"
-        },
-        {
-            "brl": "\"rboc303",
-            "testmode": "backtranslate",
-            "txt": "árboccsúcs"
-        },
-        {
-            "brl": "\"rb9c303",
-            "txt": "árbóccsúcs"
-        },
-        {
-            "brl": "\"rb9c303",
-            "testmode": "backtranslate",
-            "txt": "árbóccsúcs"
-        },
-        {
-            "brl": "\"rbocsudarat",
-            "txt": "árbocsudarat"
-        },
-        {
-            "brl": "\"rbocsudarat",
-            "testmode": "backtranslate",
-            "txt": "árbocsudarat"
-        },
-        {
-            "brl": "arc{reg4ullad\"s",
-            "txt": "arcüreggyulladás"
-        },
-        {
-            "brl": "arc{reg4ullad\"s",
-            "testmode": "backtranslate",
-            "txt": "arcüreggyulladás"
-        },
-        {
-            "brl": "arc3ont",
-            "txt": "arccsont"
-        },
-        {
-            "brl": "arc3ont",
-            "testmode": "backtranslate",
-            "txt": "arccsont"
-        },
-        {
-            "brl": "arcseb",
-            "txt": "arcseb"
-        },
-        {
-            "brl": "arcseb",
-            "testmode": "backtranslate",
-            "txt": "arcseb"
-        },
-        {
-            "brl": "arcsebe ",
-            "txt": "arcsebe "
-        },
-        {
-            "brl": "arcsebe ",
-            "testmode": "backtranslate",
-            "txt": "arcsebe "
-        },
-        {
-            "brl": "arcs1r{l1s",
-            "txt": "arcsérülés"
-        },
-        {
-            "brl": "arcs1r{l1s",
-            "testmode": "backtranslate",
-            "txt": "arcsérülés"
-        },
-        {
-            "brl": "\"rgus5em}",
-            "txt": "árgusszemű"
-        },
-        {
-            "brl": "\"rgus5em}",
-            "testmode": "backtranslate",
-            "txt": "árgusszemű"
-        },
-        {
-            "brl": "\"rv|2s0jtotta",
-            "txt": "árvízsújtotta"
-        },
-        {
-            "brl": "\"rv|2s0jtotta",
-            "testmode": "backtranslate",
-            "txt": "árvízsújtotta"
-        },
-        {
-            "brl": "aut9s5em{veg",
-            "txt": "autósszemüveg"
-        },
-        {
-            "brl": "aut9s5em{veg",
-            "testmode": "backtranslate",
-            "txt": "autósszemüveg"
-        },
-        {
-            "brl": "a2on6omban",
-            "txt": "azonnyomban"
-        },
-        {
-            "brl": "a2on6omban",
-            "testmode": "backtranslate",
-            "txt": "azonnyomban"
-        },
-        {
-            "brl": "b\"dog4}jtem16",
-            "txt": "bádoggyűjtemény"
-        },
-        {
-            "brl": "b\"dog4}jtem16",
-            "testmode": "backtranslate",
-            "txt": "bádoggyűjtemény"
-        },
-        {
-            "brl": "barn\"s57ke",
-            "txt": "barnásszőke"
-        },
-        {
-            "brl": "barn\"s57ke",
-            "testmode": "backtranslate",
-            "txt": "barnásszőke"
-        },
-        {
-            "brl": "barn\"s57k1t",
-            "txt": "barnásszőkét"
-        },
-        {
-            "brl": "barn\"s57k1t",
-            "testmode": "backtranslate",
-            "txt": "barnásszőkét"
-        },
-        {
-            "brl": "barn\"s5{rke",
-            "txt": "barnásszürke"
-        },
-        {
-            "brl": "barn\"s5{rke",
-            "testmode": "backtranslate",
-            "txt": "barnásszürke"
-        },
-        {
-            "brl": "barne55al",
-            "txt": "barnesszal"
-        },
-        {
-            "brl": "barne55al",
-            "testmode": "backtranslate",
-            "txt": "barnesszal"
-        },
-        {
-            "brl": "be3l1s5er}en",
-            "txt": "becslésszerűen"
-        },
-        {
-            "brl": "be3l1s5er}en",
-            "testmode": "backtranslate",
-            "txt": "becslésszerűen"
-        },
-        {
-            "brl": "$b1k1s5entandr\"s",
-            "brlCursorPos": 1,
-            "txt": "Békésszentandrás"
-        },
-        {
-            "brl": "$b1k1s5entandr\"s",
-            "brlCursorPos": 1,
-            "testmode": "backtranslate",
-            "txt": "Békésszentandrás"
-        },
-        {
-            "brl": "b1l1s5qvet",
-            "txt": "bélésszövet"
-        },
-        {
-            "brl": "b1l1s5qvet",
-            "testmode": "backtranslate",
-            "txt": "bélésszövet"
-        },
-        {
-            "brl": "b1eg4}jtem16",
-            "txt": "bélyeggyűjtemény"
-        },
-        {
-            "brl": "b1eg4}jtem16",
-            "testmode": "backtranslate",
-            "txt": "bélyeggyűjtemény"
-        },
-        {
-            "brl": "b1rcs{veg",
-            "txt": "bércsüveg"
-        },
-        {
-            "brl": "b1rcs{veg",
-            "testmode": "backtranslate",
-            "txt": "bércsüveg"
-        },
-        {
-            "brl": "berende21s5er} ",
-            "txt": "berendezésszerű "
-        },
-        {
-            "brl": "berende21s5er} ",
-            "testmode": "backtranslate",
-            "txt": "berendezésszerű "
-        },
-        {
-            "brl": "berende21s5ett",
-            "txt": "berendezésszett"
-        },
-        {
-            "brl": "berende21s5ett",
-            "testmode": "backtranslate",
-            "txt": "berendezésszett"
-        },
-        {
-            "brl": "beteg494\"5",
-            "txt": "beteggyógyász"
-        },
-        {
-            "brl": "beteg494\"5",
-            "testmode": "backtranslate",
-            "txt": "beteggyógyász"
-        },
-        {
-            "brl": "bilin32qrg1s",
-            "txt": "bilincszörgés"
-        },
-        {
-            "brl": "bilin32qrg1s",
-            "testmode": "backtranslate",
-            "txt": "bilincszörgés"
-        },
-        {
-            "brl": "binsen44qk1r",
-            "txt": "binsenggyökér"
-        },
-        {
-            "brl": "binsen44qk1r",
-            "testmode": "backtranslate",
-            "txt": "binsenggyökér"
-        },
-        {
-            "brl": "boh9csapk\"ja",
-            "txt": "bohócsapkája"
-        },
-        {
-            "brl": "boh9csapk\"ja",
-            "testmode": "backtranslate",
-            "txt": "bohócsapkája"
-        },
-        {
-            "brl": "bonbonme44",
-            "txt": "bonbonmeggy"
-        },
-        {
-            "brl": "bonbonme44",
-            "testmode": "backtranslate",
-            "txt": "bonbonmeggy"
-        },
-        {
-            "brl": "bors5em",
-            "txt": "borsszem"
-        },
-        {
-            "brl": "bors5em",
-            "testmode": "backtranslate",
-            "txt": "borsszem"
-        },
-        {
-            "brl": "bors59r9",
-            "txt": "borsszóró"
-        },
-        {
-            "brl": "bors59r9",
-            "testmode": "backtranslate",
-            "txt": "borsszóró"
-        },
-        {
-            "brl": "bor2as57r}",
-            "txt": "borzasszőrű"
-        },
-        {
-            "brl": "bor2as57r}",
-            "testmode": "backtranslate",
-            "txt": "borzasszőrű"
-        },
-        {
-            "brl": "bor2`|r",
-            "txt": "borzzsír"
-        },
-        {
-            "brl": "bor2`|r",
-            "testmode": "backtranslate",
-            "txt": "borzzsír"
-        },
-        {
-            "brl": "b7g1s5er}",
-            "txt": "bőgésszerű"
-        },
-        {
-            "brl": "b7g1s5er}",
-            "testmode": "backtranslate",
-            "txt": "bőgésszerű"
-        },
-        {
-            "brl": "bqrtqn6elve",
-            "txt": "börtönnyelve"
-        },
-        {
-            "brl": "bqrtqn6elve",
-            "testmode": "backtranslate",
-            "txt": "börtönnyelve"
-        },
-        {
-            "brl": "brekeg1s5er}",
-            "txt": "brekegésszerű"
-        },
-        {
-            "brl": "brekeg1s5er}",
-            "testmode": "backtranslate",
-            "txt": "brekegésszerű"
-        },
-        {
-            "brl": "bron2s\"ska",
-            "txt": "bronzsáska"
-        },
-        {
-            "brl": "bron2s\"ska",
-            "testmode": "backtranslate",
-            "txt": "bronzsáska"
-        },
-        {
-            "brl": "bron2s\"sk\"k",
-            "txt": "bronzsáskák"
-        },
-        {
-            "brl": "bron2s\"sk\"k",
-            "testmode": "backtranslate",
-            "txt": "bronzsáskák"
-        },
-        {
-            "brl": "bron2sasokkal ",
-            "txt": "bronzsasokkal "
-        },
-        {
-            "brl": "bron2sasokkal ",
-            "testmode": "backtranslate",
-            "txt": "bronzsasokkal "
-        },
-        {
-            "brl": "bron2sisak",
-            "txt": "bronzsisak"
-        },
-        {
-            "brl": "bron2sisak",
-            "testmode": "backtranslate",
-            "txt": "bronzsisak"
-        },
-        {
-            "brl": "b030j\"r\"s5er}",
-            "txt": "búcsújárásszerű"
-        },
-        {
-            "brl": "b030j\"r\"s5er}",
-            "testmode": "backtranslate",
-            "txt": "búcsújárásszerű"
-        },
-        {
-            "brl": "b}n6omok",
-            "txt": "bűnnyomok"
-        },
-        {
-            "brl": "b}n6omok",
-            "testmode": "backtranslate",
-            "txt": "bűnnyomok"
-        },
-        {
-            "brl": "chipses2a3k9",
-            "txt": "chipseszacskó"
-        },
-        {
-            "brl": "chipses2a3k9",
-            "testmode": "backtranslate",
-            "txt": "chipseszacskó"
-        },
-        {
-            "brl": "3ap\"s5\"m",
-            "txt": "csapásszám"
-        },
-        {
-            "brl": "3ap\"s5\"m",
-            "testmode": "backtranslate",
-            "txt": "csapásszám"
-        },
-        {
-            "brl": "3\"rd\"s59l9",
-            "txt": "csárdásszóló"
-        },
-        {
-            "brl": "3\"rd\"s59l9",
-            "testmode": "backtranslate",
-            "txt": "csárdásszóló"
-        },
-        {
-            "brl": "3attan\"s5er}",
-            "txt": "csattanásszerű"
-        },
-        {
-            "brl": "3attan\"s5er}",
-            "testmode": "backtranslate",
-            "txt": "csattanásszerű"
-        },
-        {
-            "brl": "3avar\"s5er}",
-            "txt": "csavarásszerű"
-        },
-        {
-            "brl": "3avar\"s5er}",
-            "testmode": "backtranslate",
-            "txt": "csavarásszerű"
-        },
-        {
-            "brl": "3ik9s5\"mad9",
-            "txt": "csikósszámadó"
-        },
-        {
-            "brl": "3ik9s5\"mad9",
-            "testmode": "backtranslate",
-            "txt": "csikósszámadó"
-        },
-        {
-            "brl": "3ipk1s51l}",
-            "txt": "csipkésszélű"
-        },
-        {
-            "brl": "3ipk1s51l}",
-            "testmode": "backtranslate",
-            "txt": "csipkésszélű"
-        },
-        {
-            "brl": "3obban\"s5er}",
-            "txt": "csobbanásszerű"
-        },
-        {
-            "brl": "3obban\"s5er}",
-            "testmode": "backtranslate",
-            "txt": "csobbanásszerű"
-        },
-        {
-            "brl": "3ukl\"s5er}",
-            "txt": "csuklásszerű"
-        },
-        {
-            "brl": "3ukl\"s5er}",
-            "testmode": "backtranslate",
-            "txt": "csuklásszerű"
-        },
-        {
-            "brl": "di55ert\"ci9",
-            "txt": "disszertáció"
-        },
-        {
-            "brl": "di55ert\"ci9",
-            "testmode": "backtranslate",
-            "txt": "disszertáció"
-        },
-        {
-            "brl": "dobperg1s5er}en",
-            "txt": "dobpergésszerűen"
-        },
-        {
-            "brl": "dobperg1s5er}en",
-            "testmode": "backtranslate",
-            "txt": "dobpergésszerűen"
-        },
-        {
-            "brl": "dqg4apj0",
-            "txt": "döggyapjú"
-        },
-        {
-            "brl": "dqg4apj0",
-            "testmode": "backtranslate",
-            "txt": "döggyapjú"
-        },
-        {
-            "brl": "d7l1s5qg",
-            "txt": "dőlésszög"
-        },
-        {
-            "brl": "d7l1s5qg",
-            "testmode": "backtranslate",
-            "txt": "dőlésszög"
-        },
-        {
-            "brl": "dqrg1s5er}",
-            "txt": "dörgésszerű"
-        },
-        {
-            "brl": "dqrg1s5er}",
-            "testmode": "backtranslate",
-            "txt": "dörgésszerű"
-        },
-        {
-            "brl": "dqrg1s5er} ",
-            "txt": "dörgésszerű "
-        },
-        {
-            "brl": "dqrg1s5er} ",
-            "testmode": "backtranslate",
-            "txt": "dörgésszerű "
-        },
-        {
-            "brl": "drago6os5\"2ad ",
-            "txt": "dragonyosszázad "
-        },
-        {
-            "brl": "drago6os5\"2ad ",
-            "testmode": "backtranslate",
-            "txt": "dragonyosszázad "
-        },
-        {
-            "brl": "drago6os2\"5l9alj",
-            "txt": "dragonyoszászlóalj"
-        },
-        {
-            "brl": "drago6os2\"5l9alj",
-            "testmode": "backtranslate",
-            "txt": "dragonyoszászlóalj"
-        },
-        {
-            "brl": "drog4an0s",
-            "txt": "droggyanús"
-        },
-        {
-            "brl": "drog4an0s",
-            "testmode": "backtranslate",
-            "txt": "droggyanús"
-        },
-        {
-            "brl": "d0s5ak\"ll0",
-            "txt": "dússzakállú"
-        },
-        {
-            "brl": "d0s5ak\"ll0",
-            "testmode": "backtranslate",
-            "txt": "dússzakállú"
-        },
-        {
-            "brl": "1des5\"j0",
-            "txt": "édesszájú"
-        },
-        {
-            "brl": "1des5\"j0",
-            "testmode": "backtranslate",
-            "txt": "édesszájú"
-        },
-        {
-            "brl": "1des5e5testv1r",
-            "txt": "édesszesztestvér"
-        },
-        {
-            "brl": "1des5e5testv1r",
-            "testmode": "backtranslate",
-            "txt": "édesszesztestvér"
-        },
-        {
-            "brl": "1g1s5ab\"",
-            "txt": "égésszabály"
-        },
-        {
-            "brl": "1g1s5ab\"",
-            "testmode": "backtranslate",
-            "txt": "égésszabály"
-        },
-        {
-            "brl": "1g1s5ag",
-            "txt": "égésszag"
-        },
-        {
-            "brl": "1g1s5ag",
-            "testmode": "backtranslate",
-            "txt": "égésszag"
-        },
-        {
-            "brl": "1g1s5\"m",
-            "txt": "égésszám"
-        },
-        {
-            "brl": "1g1s5\"m",
-            "testmode": "backtranslate",
-            "txt": "égésszám"
-        },
-        {
-            "brl": "1g1s5igetel1s",
-            "txt": "égésszigetelés"
-        },
-        {
-            "brl": "1g1s5igetel1s",
-            "testmode": "backtranslate",
-            "txt": "égésszigetelés"
-        },
-        {
-            "brl": "e4enes5\"l0",
-            "txt": "egyenesszálú"
-        },
-        {
-            "brl": "e4enes5\"l0",
-            "testmode": "backtranslate",
-            "txt": "egyenesszálú"
-        },
-        {
-            "brl": "e4enes5\"r60ak",
-            "txt": "egyenesszárnyúak"
-        },
-        {
-            "brl": "e4enes5\"r60ak",
-            "testmode": "backtranslate",
-            "txt": "egyenesszárnyúak"
-        },
-        {
-            "brl": "e4enes5qg",
-            "txt": "egyenesszög"
-        },
-        {
-            "brl": "e4enes5qg",
-            "testmode": "backtranslate",
-            "txt": "egyenesszög"
-        },
-        {
-            "brl": "e4e2s1g",
-            "txt": "egyezség"
-        },
-        {
-            "brl": "e4e2s1g",
-            "testmode": "backtranslate",
-            "txt": "egyezség"
-        },
-        {
-            "brl": "1hes5\"jat ",
-            "txt": "éhesszájat "
-        },
-        {
-            "brl": "1hes5\"jat ",
-            "testmode": "backtranslate",
-            "txt": "éhesszájat "
-        },
-        {
-            "brl": "ejt7er67s5\"r6ak",
-            "txt": "ejtőernyősszárnyak"
-        },
-        {
-            "brl": "ejt7er67s5\"r6ak",
-            "testmode": "backtranslate",
-            "txt": "ejtőernyősszárnyak"
-        },
-        {
-            "brl": "ejt7er67s5\"2ad",
-            "txt": "ejtőernyősszázad"
-        },
-        {
-            "brl": "ejt7er67s5\"2ad",
-            "testmode": "backtranslate",
-            "txt": "ejtőernyősszázad"
-        },
-        {
-            "brl": "ejt7er67s2\"5l9alj ",
-            "txt": "ejtőernyőszászlóalj "
-        },
-        {
-            "brl": "ejt7er67s2\"5l9alj ",
-            "testmode": "backtranslate",
-            "txt": "ejtőernyőszászlóalj "
-        },
-        {
-            "brl": "1kes59l\"s",
-            "txt": "ékesszólás"
-        },
-        {
-            "brl": "1kes59l\"s",
-            "testmode": "backtranslate",
-            "txt": "ékesszólás"
-        },
-        {
-            "brl": "1kes59l9 ",
-            "txt": "ékesszóló "
-        },
-        {
-            "brl": "1kes59l9 ",
-            "testmode": "backtranslate",
-            "txt": "ékesszóló "
-        },
-        {
-            "brl": "ekh9s5ek1r",
-            "txt": "ekhósszekér"
-        },
-        {
-            "brl": "ekh9s5ek1r",
-            "testmode": "backtranslate",
-            "txt": "ekhósszekér"
-        },
-        {
-            "brl": "ekh9s5ekerek",
-            "txt": "ekhósszekerek"
-        },
-        {
-            "brl": "ekh9s5ekerek",
-            "testmode": "backtranslate",
-            "txt": "ekhósszekerek"
-        },
-        {
-            "brl": "eles1g4}jt1s ",
-            "txt": "eleséggyűjtés "
-        },
-        {
-            "brl": "eles1g4}jt1s ",
-            "testmode": "backtranslate",
-            "txt": "eleséggyűjtés "
-        },
-        {
-            "brl": "1les5em}",
-            "txt": "élesszemű"
-        },
-        {
-            "brl": "1les5em}",
-            "testmode": "backtranslate",
-            "txt": "élesszemű"
-        },
-        {
-            "brl": "ell\"t\"s5er}",
-            "txt": "ellátásszerű"
-        },
-        {
-            "brl": "ell\"t\"s5er}",
-            "testmode": "backtranslate",
-            "txt": "ellátásszerű"
-        },
-        {
-            "brl": "ellen\"ll\"s5ekr16",
-            "txt": "ellenállásszekrény"
-        },
-        {
-            "brl": "ellen\"ll\"s5ekr16",
-            "testmode": "backtranslate",
-            "txt": "ellenállásszekrény"
-        },
-        {
-            "brl": "ellen6ilatko2at",
-            "txt": "ellennyilatkozat"
-        },
-        {
-            "brl": "ellen6ilatko2at",
-            "testmode": "backtranslate",
-            "txt": "ellennyilatkozat"
-        },
-        {
-            "brl": "ellen6om\"s",
-            "txt": "ellennyomás"
-        },
-        {
-            "brl": "ellen6om\"s",
-            "testmode": "backtranslate",
-            "txt": "ellennyomás"
-        },
-        {
-            "brl": "elm1ncs1g",
-            "txt": "elméncség"
-        },
-        {
-            "brl": "elm1ncs1g",
-            "testmode": "backtranslate",
-            "txt": "elméncség"
-        },
-        {
-            "brl": "el7|r\"s5er} ",
-            "txt": "előírásszerű "
-        },
-        {
-            "brl": "el7|r\"s5er} ",
-            "testmode": "backtranslate",
-            "txt": "előírásszerű "
-        },
-        {
***The diff for this file has been truncated for email.***
=======================================
--- /trunk/tests/harness/letterDefTest_harness.txt      Wed May 30 10:00:22 2012
+++ /trunk/tests/harness/letterDefTest_harness.txt      Fri Jun  8 05:54:20 2012
@@ -1,9 +1,13 @@
-{
-    "table": "letterDefTest.ctb",
-    "tests": [
-        {
-            "brl": "⠎⠍",
-            "txt": "⠍⠎"
-        }
-    ]
-}
+{
+  "sections": [
+    {
+      "tests": [
+        {
+            "output": "⠎⠍",
+            "input": "⠍⠎"
+        }
+      ]
+    }
+  ],
+  "table": "letterDefTest.ctb"
+}
=======================================
--- /trunk/tests/harness/ta-ta-g1_harness.txt   Wed May 30 10:00:22 2012
+++ /trunk/tests/harness/ta-ta-g1_harness.txt   Fri Jun  8 05:54:20 2012
@@ -1,53 +1,57 @@
-{
-    "table": "ta-ta-g1.ctb",
-    "tests": [
-        {
-            "brl": "i",
-            "txt": "இ"
+{
+  "sections": [
+    {
+      "tests": [
+        {
+            "output": "i",
+            "input": "இ"
         },
         {
-            "brl": "p",
-            "txt": "ப"
+            "output": "p",
+            "input": "ப"
         },
         {
-            "brl": "pi",
-            "txt": "பி"
+            "output": "pi",
+            "input": "பி"
         },
         {
-            "brl": "`k",
-            "txt": "க்"
+            "output": "`k",
+            "input": "க்"
         },
         {
-            "brl": " s ",
-            "txt": " ஸ்ரீ "
+            "output": " s ",
+            "input": " ஸ்ரீ "
         },
         {
-            "brl": "p`sr9",
-            "txt": "பஸ்ரீ"
+            "output": "p`sr9",
+            "input": "பஸ்ரீ"
         },
         {
-            "brl": " q ",
-            "txt": " க்ஷ "
+            "output": " q ",
+            "input": " க்ஷ "
         },
         {
-            "brl": "`q4",
-            "txt": "க்ஷ்."
+            "output": "`q4",
+            "input": "க்ஷ்."
         },
         {
-            "brl": ",8",
-            "txt": "“"
+            "output": ",8",
+            "input": "“"
         },
         {
-            "brl": "0'",
-            "txt": "”"
+            "output": "0'",
+            "input": "”"
         },
         {
-            "brl":"8",
-            "txt": "‘"
+            "output":"8",
+            "input": "‘"
         },
         {
-            "brl": "0",
-            "txt": "’"
-       }
-    ]
-}
+            "output": "0",
+            "input": "’"
+       }
+      ]
+    }
+  ],
+  "table": "ta-ta-g1.ctb"
+}
=======================================
--- /trunk/tests/runHarnessV2.py        Tue Jun  5 02:03:11 2012
+++ /trunk/tests/runHarnessV2.py        Fri Jun  8 05:54:20 2012
@@ -54,33 +54,32 @@
 def showCurPos(length, pos1, marker1="^", pos2=None, marker2="*"):
"""A helper function to make a string to show the position of the given cursor."""
     display = [" "] *length
-    #print "pos1:", pos1
     display[pos1] = marker1
     if pos2:
         display[pos2] = marker2
     return "".join(display)

 class BrailleTest():
- def __init__(self, harnessName, table, txt, brl, mode=0, cursorPos=None, brlCursorPos=None, comment=None, testmode=None): + def __init__(self, harnessName, table, input, output, mode=0, cursorPos=None, brlCursorPos=None, testmode='translate', comment=None):
         self.harnessName = harnessName
         self.table = table
-        self.txt = txt
-        self.expectedBrl = brl
+        self.input = input
+        self.expectedBrl = output
         self.mode = mode if not mode else modes[mode]
         self.cursorPos = cursorPos
         self.expectedBrlCursorPos = brlCursorPos
         self.comment = comment
-        self.testmode = 'translate' if not testmode else testmode
+        self.testmode = testmode

     def __str__(self):
-        return "%s: %s" % (self.harnessName, self.txt)
+        return "%s: %s" % (self.harnessName, self.input)

     def check_translate(self):
         if self.testmode != 'translate': return
         if self.cursorPos is not None:
- tBrl, temp1, temp2, tBrlCurPos = translate(self.table, self.txt, mode=self.mode, cursorPos=self.cursorPos) + tBrl, temp1, temp2, tBrlCurPos = translate(self.table, self.input, mode=self.mode, cursorPos=self.cursorPos)
         else:
- tBrl, temp1, temp2, tBrlCurPos = translate(self.table, self.txt, mode=self.mode) + tBrl, temp1, temp2, tBrlCurPos = translate(self.table, self.input, mode=self.mode)
         template = "%-25s '%s'"
         tBrlCurPosStr = showCurPos(len(tBrl), tBrlCurPos)
         report = [
@@ -93,22 +92,19 @@
         assert tBrl == self.expectedBrl, u("\n".join(report))

     def check_backtranslate(self):
-        if self.testmode != 'backtranslate': return
backtranslate_output = backTranslateString(self.table, self.expectedBrl, None, mode=self.mode)
         template = "%-25s '%s'"
         report = [
             self.__str__(),
             "--- Backtranslate failure: ---",
-            template % ("expected text:", self.txt),
+            template % ("expected text:", self.input),
template % ("actual backtranslated text:", backtranslate_output),
             "--- end ---",
         ]
-        assert backtranslate_output == self.txt, u("\n".join(report))
+        assert backtranslate_output == self.input, u("\n".join(report))

     def check_cursor(self):
-        if self.testmode != 'translate': return
-        if self.cursorPos == None: return
- tBrl, temp1, temp2, tBrlCurPos = translate(self.table, self.txt, mode=self.mode, cursorPos=self.cursorPos) + tBrl, temp1, temp2, tBrlCurPos = translate(self.table, self.input, mode=self.mode, cursorPos=self.cursorPos)
         template = "%-25s '%s'"
etBrlCurPosStr = showCurPos(len(tBrl), tBrlCurPos, pos2=self.expectedBrlCursorPos)
         report = [
@@ -142,9 +138,17 @@
         f.close()
         print("Processing %s" %harness)
         tableList = [u(harnessModule['table'])]
-
-        for test in harnessModule['tests']:
-            bt = BrailleTest(harness, tableList, **test)
-            yield bt.check_translate
-            yield bt.check_cursor
-            yield bt.check_backtranslate
+        origflags = {'testmode':'translate'}
+        for section in harnessModule['sections']:
+            flags = section.get('flags', origflags)
+            for testData in section['tests']:
+                test = flags.copy()
+                test.update(testData)
+                bt = BrailleTest(harness, tableList, **test)
+                if test['testmode'] == 'translate':
+                    yield bt.check_translate
+                    if test.has_key('cursorPos'):
+                        yield bt.check_cursor
+                if test['testmode'] == 'backtranslate':
+                    continue
+                    #yield bt.check_backtranslate
���*m���^���޶�h�hiحjwe�y,��k�7����z���m����n)b�'����

Other related posts:

  • » [liblouis-liblouisxml] [liblouis] r682 committed - runharnessV2.py, harness/*_harness.txt:... - liblouis