[css-writing-modes-3] Test planning on sizing orthogonal blocks (§ 7.3.2): 128 tests

Koji, Elika,

7.3. Orthogonal Flows
https://drafts.csswg.org/css-writing-modes-3/#orthogonal-flows

7.3.2 Auto-sizing Block Containers in Orthogonal Flows
https://drafts.csswg.org/css-writing-modes-3/#auto-multicol


I am planning to create 128 tests thoroughly checking the formula:

min(max-content, max(min-content, constraint))

where

min-content inline-size of the box: longest word in a sentence or 
longest non-breakable inline box (inline replaced or inline-block). Eg: 
"sentence" in "I am a text sentence."
https://www.w3.org/TR/css-sizing-3/#min-content-inline-size

max-content inline size: narrowest inline size needed to fit its 
contents if none of the soft wrap opportunities within the box were 
taken. Eg: "I am a text sentence."
https://www.w3.org/TR/css-sizing-3/#max-content-inline-size

- - - - - - -

What will be those 128 tests?


First, the writing-modes involved:

I will be doing tests involving 3 writing-modes only: htb, vrl and vlr. 
I am excluding parallel-to-each-other writing-modes and I am excluding 
'sideways-rl' and 'sideways-lr' writing-modes. So, tests will involve 
these writing-mode couples: htb-vrl, htb-vlr, vrl-htb, vlr-htb == 4 
combinations of writing-modes.
eg. htb-vrl means that the principal document writing-mode is 
'horizontal-tb' and the orthogonal block is 'vertical-rl'


Second, body has or has no vertical margins:

body has 100px margin-top and 100px margin-bottom
body has no vertical margins                                  ==  2 
combinations


Third, containing block's height is indefinite or definite:

containing block's height is 'auto' therefore indefinite
containing block's height is, say, 400px therefore definite   ==  2 
combinations


Fourth, containing block has sentences before and after or no sentence:

containing block has 1 sentence before and after
containing block has no sentence before and no sentence after  ==  2 
combinations


Fifth,

orthogonal block's height is 'auto'
orthogonal block's height is 'auto' and its min-content inline-size is 
greater than containing block's (definite) height (1 very long word)
orthogonal block's height is 'auto' its max-content inline-size is 
smaller than containing block's (definite) height (short sentence)
orthogonal block's height is 50%                              ==  4 
combinations

==========================================================================

4 mult by 2 mult by 2  mult by 2  mult by 4                   ==  128 
tests


Tests filenaming:

sizing-orthog-vrl-in-htb-[001-032]

sizing-orthog-vlr-in-htb-[033-064]

sizing-orthog-htb-in-vrl-[065-096]

sizing-orthog-htb-in-vlr-[097-128]

which I think is descriptive enough.

If one day we want to tests 'sideways-*', then we should reuse such 
filenaming scheme. Eg sizing-orthog-srl-in-htb-[129-160]

If one day we want to test parallel-to-each-other writing modes, then we 
should use sizing-parall-vrl-in-vlr-[001-032] filenaming scheme.


Inside each batch of 32 tests:
001-016 : body has 100px margin-top and 100px margin-bottom
017-032 : body has no vertical margins

Inside each sub-batch of 16 tests:
001-008: containing block's height is 'auto' therefore indefinite
009-016: containing block's height is, say, 400px therefore definite

Inside each sub-sub-batch of 8 tests:
001-004: containing block has 1 sentence before and after
005-008: containing block has no sentence before and no sentence after

Inside each sub-sub-sub-batch of 4 tests:
001: orthogonal block's height is 'auto'
002: orthogonal block's height is 'auto' and its min-content inline-size 
is greater than containing-block's (definite) height (1 very long word)
003: orthogonal block's height is 'auto' its max-content inline-size is 
smaller than containing-block's (definite) height (short sentence)
004: orthogonal block's height is 50%

Gérard
-- 
Test Format Guidelines
http://testthewebforward.org/docs/test-format-guidelines.html

Test Style Guidelines
http://testthewebforward.org/docs/test-style-guidelines.html

Test Templates
http://testthewebforward.org/docs/test-templates.html

CSS Naming Guidelines
http://testthewebforward.org/docs/css-naming.html

Test Review Checklist
http://testthewebforward.org/docs/review-checklist.html

CSS Metadata
http://testthewebforward.org/docs/css-metadata.html

Received on Wednesday, 7 September 2016 21:40:37 UTC