Test to verify that the new place-self alignment shorthand is parsed as expected and correctly sets the longhand values.


PASS Test getting the Computed Value of place-self's longhand properties when setting 'normal' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'center auto' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'baseline' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'first baseline' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'last baseline' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'start' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'flex-start' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'end' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'self-start' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'stretch' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'start end' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'start self-end' value through CSS. 
PASS Test getting the Computed Value of place-self's longhand properties when setting 'start baseline' value through CSS. 
PASS Test setting '' as incorrect value through CSS. 
PASS Test setting 'auto' as incorrect value through CSS. 
PASS Test setting 'none' as incorrect value through CSS. 
PASS Test setting 'safe' as incorrect value through CSS. 
PASS Test setting 'start safe' as incorrect value through CSS. 
PASS Test setting 'baseline safe' as incorrect value through CSS. 
PASS Test setting 'start end left' as incorrect value through CSS. 
PASS Test setting values through JS. 
PASS Test setting incorrect values through JS. 
PASS Test the 'initial' value of the place-self shorthand and its longhand properties' Computed value 
PASS Test the 'inherit' value of the place-self shorthand and its longhand properties' Computed value 

