blob: a1f5be16a18d1b5e77546c8f54843abca83ff662 [file] [log] [blame]
# This test case illustrates a bug with the before opcode. When we
# have more than 19 class definitions a before rule is triggered that
# should not match. In the following scenario the `begmidword lande`
# rule should only trigger when 'lande' is before a 'u'. If one class
# definition is removed as in the second test then the correct rules
# are triggered.
table: |
include tables/unicode.dis
include tables/de-chardefs6.cti
class foo zz
class a a
class b b
class c c
class d d
class e e
class er er
class f f
class h h
class g g
class i i
class j j
class k k
class l l
class m m
class n n
class r r
class s s
class t t
class u u
begmidword an 235
always en 14
before u begmidword lande 123-235-145-15
tests:
# the only rules that should match here are the begmidword an and
# the always en rule. The rule `before u begmidword lande` shouldn't
# match but for some reason it does
- [landend, ⠇⠖⠙⠉⠙, {xfail: true}]
# if we remove one of the class definitions then the correct rules
# match
table: |
include tables/unicode.dis
include tables/de-chardefs6.cti
class a a
class b b
class c c
class d d
class e e
class er er
class f f
class h h
class g g
class i i
class j j
class k k
class l l
class m m
class n n
class r r
class s s
class t t
class u u
begmidword an 235
always en 14
before u begmidword lande 123-235-145-15
tests:
- [landend, ⠇⠖⠙⠉⠙]
# it looks like it doesn't matter which class definition we remove
# match, as long as we remove one
table: |
include tables/unicode.dis
include tables/de-chardefs6.cti
class foo zz
class b b
class c c
class d d
class e e
class er er
class f f
class h h
class g g
class i i
class j j
class k k
class l l
class m m
class n n
class r r
class s s
class t t
class u u
begmidword an 235
always en 14
before u begmidword lande 123-235-145-15
tests:
- [landend, ⠇⠖⠙⠉⠙]
# same story with a different word. What should match are the rules
# `always en`, `begmidword be` and `syllable stärk`. The rule
# `before u begmidword stärke` should not match at all. Again this
# seems to depend on the number of classes defined
table: |
include tables/unicode.dis
include tables/de-chardefs6.cti
class foo zz
class a a
class b b
class c c
class d d
class e e
class er er
class f f
class h h
class g g
class i i
class j j
class k k
class l l
class m m
class n n
class r r
class s s
class t t
class u u
always en 14
begmidword be 23
syllable stärk 23456-345-1235-13
before u begmidword stärke 23456-345-1235-13-15
tests:
- [bestärkend, ⠆⠾⠜⠗⠅⠉⠙, {xfail: true}]
# If we remove a class then the translation is correct
table: |
include tables/unicode.dis
include tables/de-chardefs6.cti
class a a
class b b
class c c
class d d
class e e
class er er
class f f
class h h
class g g
class i i
class j j
class k k
class l l
class m m
class n n
class r r
class s s
class t t
class u u
always en 14
begmidword be 23
syllable stärk 23456-345-1235-13
before u begmidword stärke 23456-345-1235-13-15
tests:
- [bestärkend, ⠆⠾⠜⠗⠅⠉⠙]