| #!tools/lou_checkyaml |
| |
| # A collection of tests related to whether or not it is needed to |
| # define characters and braille cells (in character definition rules) |
| # in order to be able to use them in other rules. |
| |
| # A cell in a multi-cell character definition does not need to be defined in its own character definition. |
| # It works as long as there is a display rule to display the cell in the output... |
| table: | |
| display x 2 |
| sign a 1 |
| sign b 1-2 |
| # ... or as long as the cell does not end up in output. |
| table: | |
| sign x 3 |
| sign a 1 |
| sign b 1-2 |
| noback pass2 @2 @3 |
| nofor pass2 @3 @2 |
| flags: {testmode: bothDirections} |
| tests: |
| - - b |
| - ax |
| # If a cell ends up in the output and can not be displayed, it results in an error. |
| # FIXME: use the expectedError flag (https://github.com/liblouis/liblouis/issues/875) |
| # table: | |
| # sign a 1 |
| # sign b 1-2 |
| # flags: {testmode: forward} |
| # tests: |
| # - - b |
| # - "a " |
| |
| # A braille cell used in a begcapsword rule does not need to be previously defined in a character definition rule. |
| # It works as long as there is a display rule to display the cell in the output... |
| table: | |
| display x 2 |
| uplow Aa 1 |
| begcapsword 2 |
| # ... or as long as the cell does not end up in output. |
| table: | |
| sign x 3 |
| uplow Aa 1 |
| begcapsword 2 |
| noback pass2 @2 @3 |
| nofor pass2 @3 @2 |
| flags: {testmode: bothDirections} |
| tests: |
| - - AA |
| - xaa |
| # If a cell ends up in the output and can not be displayed, it results in an error. |
| # FIXME: use the expectedError flag (https://github.com/liblouis/liblouis/issues/875) |
| # table: | |
| # uplow Aa 1 |
| # begcapsword 2 |
| # flags: {testmode: forward} |
| # tests: |
| # - - AA |
| # - " aa" |
| |
| # Characters or braille cells used in a context rule do not need to be previously defined in character definition rules. |
| table: | |
| display x 1 |
| noback context "a" @1 |
| nofor context @1 "a" |
| flags: {testmode: bothDirections} |
| tests: |
| - - a |
| - x |
| |
| # A character used in a class or swap name does not need to be previously defined in a character definition rule. |
| table: | |
| sign a 1 |
| sign b 2 |
| sign c 3 |
| class foo a |
| swapcd bar b 3 |
| noback context %foo @3 |
| noback context %bar %bar |
| flags: {testmode: forward} |
| tests: |
| - - a |
| - c |
| - - b |
| - c |
| |
| # A character that is assigned to a class does not need to be previously defined in a character definition rule. |
| table: | |
| display x 1 |
| class foo a |
| noback context %foo @1 |
| flags: {testmode: forward} |
| tests: |
| - - a |
| - x |
| |
| # Characters in a hyphenation pattern do not need to be previously defined in character definition rules. |
| table: | |
| letter a 1 |
| letter b 2 |
| include issue-332_hyph.dic # a1b |
| flags: {testmode: hyphenate} |
| tests: |
| - - aaabbb |
| - aaa-bbb |
| |
| # Characters or braille cells used in a always rule do not need to be previously defined in character definition rules. |
| # It works as long as there is a display rule to display the cell in the output... |
| table: | |
| display x 2 |
| always a 2-2 |
| # ... or as long as the cell does not end up in output. |
| table: | |
| sign x 3 |
| always a 2-2 |
| noback pass2 @2 @3 |
| nofor pass2 @3 @2 |
| flags: {testmode: bothDirections} |
| tests: |
| - - a |
| - xx |
| # If a cell ends up in the output and can not be displayed, it results in an error. |
| # FIXME: use the expectedError flag (https://github.com/liblouis/liblouis/issues/875) |
| # table: | |
| # always a 2 |
| # flags: {testmode: forward} |
| # tests: |
| # - - a |
| # - " " |