This tests the accessible text alternatives results for SVG when the content-language attribute is set.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


test1:
	Expected name: generic title; description: generic desc
	AXTitle: 
	AXDescription: generic title
test2:
	Expected name: title for en; description: desc for en
	AXTitle: 
	AXDescription: title for en
test3:
	Expected name: title for en; description: desc for en
	AXTitle: 
	AXDescription: title for en
test4:
	Expected name: title for EN; description: desc for EN
	AXTitle: 
	AXDescription: title for EN
test5:
	Expected name: generic title; description: generic desc
	AXTitle: 
	AXDescription: generic title
test6:
	Expected name: generic title; description: generic desc
	AXTitle: 
	AXDescription: generic title
test7:
	Expected name: title for en-gb; description: desc for en-gb
	AXTitle: 
	AXDescription: title for en-gb
test8:
	Expected name: title for en_GB; description: desc for en_GB
	AXTitle: 
	AXDescription: title for en_GB
test9:
	Expected name: title for en; description: desc for en
	AXTitle: 
	AXDescription: title for en
test10:
	Expected name: title for en-us; description: desc for en-us
	AXTitle: 
	AXDescription: title for en-us
test11:
	Expected name: title for en-us; description: desc for en-us
	AXTitle: 
	AXDescription: title for en-us
test12:
	Expected name: generic title; description: generic desc
	AXTitle: 
	AXDescription: generic title
test13:
	Expected name: 1st title for en_GB; description: 1st desc for en_GB
	AXTitle: 
	AXDescription: 1st title for en_GB
test14:
	Expected name: 1st generic title; description: 1st generic desc
	AXTitle: 
	AXDescription: 1st generic title
PASS successfullyParsed is true

TEST COMPLETE

