Re: CSS2.1 i18n and bidi tests for review

On Sat, 19 Jul 2008 11:59:57 +0200, fantasai  
<fantasai.lists@inkedblade.net> wrote:

> Eira Monstad wrote:
>>  On Fri, 18 Jul 2008 11:26:24 +0200, fantasai  
>> <fantasai.lists@inkedblade.net> wrote:
>>
>>> Eira Monstad wrote:
>>>>  Cheers,
>>>>  I've been working on some bidi related tests for the 2.1 testsuite,  
>>>> as well as converting a few of Richard Ishida's tests for language  
>>>> dependent styling to match the testsuite template. The tests are  
>>>> ready for review at http://people.opera.com/eiram/test/css21/review/
>>>
>>> http://people.opera.com/eiram/test/css21/review/bidi-display-block-001.xht  
>>> So the assertion here is
>>>    "An inline with display:block should be treated as a paragraph
>>>     in the bidi algorithm"
>>>
>>> How would the test fail? You'd get the same result if the <span>s
>>> were still inline and the text wrap point happened to fall in
>>> between, no?
>>  Yes, you should.
>>  This test isn't any different, logically, from checking that a bidi  
>> paragraph boundary is applied on <br>.
>
> Right.
>
>> Opera had bugs on this back when bidi was first implemented, so it's
>> a good thing to check even though it seems obvious that the two lines
>>  would be the same.
>>  I've modified the test a bit to make it a tad more complex, could  
>> potentially catch a bug or two that the previous version didn't. The  
>> logic of the test it the same though.
>
> Looks like it would catch more bugs, but I'm still having a hard time
> understanding how this test would fail if the UA did not place a bidi
> paragraph boundary between the two spans. To test that, you'd need to
> place a neutral character at the boundary and put a character on the
> other side that would cause the neutral character to change position
> if the boundary wasn't there.

The test in its current incarnation will, if the paragraph boundary is not  
present, end up as "eng AR (eng eng ( AR (eng (1". That is quite different  
 from the correct rendering with boundary, which is "eng AR (eng (1" twice.  
So the test should be fine.

> E.g. using the ltr RTL convention, logical order in the source, and
> ltr paragraph direction:
>
> <span>CBA def IHG!</span>
> <span>CBA def IHG!</span>
>
> which should display as
>    ABC def GHI!
>    ABC def GHI!
> but if the 'display: block;' wasn't there would display as (if I'm doing
> this correctly)
>    ABC def ABC !GHI def GHI!
> and if the 'display: block;' was there but bidi boundary wasn't there
> would display as
>    ABC def !GHI
>    ABC def GHI!
> (because the exclamation mark gets RTL directionality from being
> surrounded by RTL characters instead of LTR directionality from being
> bounded on one end by RTL and on the other end by the LTR paragraph
> boundary).

This won't work. As I'm on vacation right now (I just stumbled over my  
mail as I was going to shut the machine down before leaving) I'll leave  
the why as an exercise to the reader ;)


-- 
Eira Monstad
CoreQA

Furthermore, it is my opinion that BTS2 must be destroyed

Received on Saturday, 19 July 2008 19:24:34 UTC