I believe full-width-001 full-width-002 full-width-003 tests should be
tweaked and tuned because I believe they are not precise and they are
not perfectly reliable, not perfectly revealing.
For example full-width-002 test:
First, that full-width-002.htm uses a very misleading class name "tcy"
Second, the "6" (6 == 6 or &x36; or U+0036: In basic latin range:
ASCII Digits) versus "６" (６ == ６ or &xFF16; or U+FF16:
full-width 6 : In Halfwidth and Fullwidth Forms range
http://unicode.org/charts/PDF/UFF00.pdf) (you have to have good eyes to
notice the difference of glyphs): one is the full-width version of the
Third, as coded, it looks like both <p> are tests, are being tested
(because the wrapping div has the class name "test") but both <p> are
not tests. The first (in source code order) <p> should be the test and
is the test; the second (in source code order) <p> should be the
reference and is the comparing reference. What you should have instead
in that full-width-002.htm test is a structure like this:
This structure would improve understandability of the test.
Fourth, as I suspected, the "6" should not be part of that
full-width-002.htm test because it is not what's being tested, is not
what is the goal, target of the test (as stated by the test's text
assert). The "19" is the sole target of the test.
That full-width-002.htm test is not reliable precisely because some
browsers (Chrome 49+) supports and implements 'text-combine-upright:
all' while some others (Firefox 45+) supports and implements
'text-transform: full-width'. By breaking, splitting the test into 2
separate and distinct sub-tests, we would clearly and cleanly see which
browsers support which properties.