Difference between revisions of "Cue Text, including replacements"
(→Cue Text) |
(→Time Stamp Cue Text) |
||
(36 intermediate revisions by 3 users not shown) | |||
Line 67: | Line 67: | ||
==Michael== | ==Michael== | ||
− | |||
* These escape characters don't appear to be accepted by the parser:   ‎ ‏ | * These escape characters don't appear to be accepted by the parser:   ‎ ‏ | ||
+ | * I have taken TC5100-TC5123, these tests are all related to multiple components | ||
=Test Scenarios Identified= | =Test Scenarios Identified= | ||
Line 82: | Line 82: | ||
* <s>No cue text with a combination of line feed and carriage return character(s)</s> - '''Jordan''', '''Rick''' | * <s>No cue text with a combination of line feed and carriage return character(s)</s> - '''Jordan''', '''Rick''' | ||
* <s>Simple one-line of cue text - no other components</s> - '''Rick''' | * <s>Simple one-line of cue text - no other components</s> - '''Rick''' | ||
− | * multiple-line text - '''Rick Eyre''' | + | * <s>multiple-line text</s> - '''Rick Eyre''', '''Shayan''' |
− | ** line terminator in between | + | ** <s>line terminator in between</s> - '''Shayan''' |
==Chapter Title Text== | ==Chapter Title Text== | ||
Line 123: | Line 123: | ||
=Concrete Tests= | =Concrete Tests= | ||
− | == | + | =='''Tests that should PASS'''== |
===Cue Text Format=== | ===Cue Text Format=== | ||
+ | '''tc5001-multiple_cue_text_component''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 134: | Line 135: | ||
</pre> | </pre> | ||
+ | '''tc5002-multiple_line_cue_text_component''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 143: | Line 145: | ||
</pre> | </pre> | ||
+ | '''tc5003-cue_text_single_sub_class''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 150: | Line 153: | ||
</pre> | </pre> | ||
+ | '''tc5004-cue_text_multiple_sub_class''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 155: | Line 159: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
<u.class.subclass>Hey this is a test!</u> | <u.class.subclass>Hey this is a test!</u> | ||
− | </pre> | + | </pre> |
===No Cue Text=== | ===No Cue Text=== | ||
+ | '''tc5005-no_cue_text''' | ||
* There will be multiple test files with combinations of carriage return characters and or line feed characters in combination. | * There will be multiple test files with combinations of carriage return characters and or line feed characters in combination. | ||
Line 169: | Line 174: | ||
===Basic Cue Text Span=== | ===Basic Cue Text Span=== | ||
+ | '''tc5006-basic_cue_text''' | ||
* Basic cue text with no modifiers | * Basic cue text with no modifiers | ||
Line 180: | Line 186: | ||
===Cue Text Span With Multiple Lines=== | ===Cue Text Span With Multiple Lines=== | ||
+ | '''tc5007-multiple_line_basic_cue_text''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 190: | Line 197: | ||
=== Basic Cue Text with Ampersand Escape Characters=== | === Basic Cue Text with Ampersand Escape Characters=== | ||
+ | '''tc5008-less_than_escape_character''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 197: | Line 205: | ||
</pre> | </pre> | ||
+ | '''tc5009-greater_than_escape_character''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 204: | Line 213: | ||
</pre> | </pre> | ||
+ | '''tc5010-ampersan_escape_character''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 211: | Line 221: | ||
</pre> | </pre> | ||
+ | '''tc5011-non_breaking_space_character''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 218: | Line 229: | ||
</pre> | </pre> | ||
+ | '''tc5012-left_to_right_escape_character''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 225: | Line 237: | ||
</pre> | </pre> | ||
+ | '''tc5013-right_to_left_escape_character''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 234: | Line 247: | ||
===Chapter Text with Multiple Escape Characters=== | ===Chapter Text with Multiple Escape Characters=== | ||
+ | '''tc50140-multiple_escape_characters''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 241: | Line 255: | ||
</pre> | </pre> | ||
+ | '''tc5015-multiple_escape_characters_and_lines''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 253: | Line 268: | ||
====Italic Cue Text==== | ====Italic Cue Text==== | ||
+ | '''tc5016-italic_cue_test''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 262: | Line 278: | ||
====Bold Cue Text==== | ====Bold Cue Text==== | ||
+ | '''tc5017-bold_cue_text''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 271: | Line 288: | ||
====Underline Cue Text==== | ====Underline Cue Text==== | ||
+ | '''tc5018-underline_cue_text''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 280: | Line 298: | ||
====Voice Cue Text==== | ====Voice Cue Text==== | ||
+ | '''tc5019-voice_cue_component''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 287: | Line 306: | ||
</pre> | </pre> | ||
+ | '''tc5020-internal_voice_cue_text''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 294: | Line 314: | ||
</pre> | </pre> | ||
+ | '''tc5021-multiple_line_voice_cue_text''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 304: | Line 325: | ||
====Time Stamp Cue Text==== | ====Time Stamp Cue Text==== | ||
+ | '''tc5022-time_stamp_cue_component''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 311: | Line 333: | ||
</pre> | </pre> | ||
+ | '''tc5023-multiple_time_stamp_cue_component''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
00:11.000 --> 00:15.000 | 00:11.000 --> 00:15.000 | ||
− | We <00:12.000>are in<0:13 | + | We <00:12.000>are in<0:13.000> New York City |
</pre> | </pre> | ||
====Class Cue Text==== | ====Class Cue Text==== | ||
+ | '''tc5024-class_cue_component''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 326: | Line 350: | ||
We <c>are</c> in New York City | We <c>are</c> in New York City | ||
</pre> | </pre> | ||
− | |||
====Multiple Component Cue Text==== | ====Multiple Component Cue Text==== | ||
+ | '''tc5025-multiple_cue_component''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 337: | Line 361: | ||
</pre> | </pre> | ||
+ | '''tc5026-multiLine_multiple_cue_component''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 345: | Line 370: | ||
</pre> | </pre> | ||
+ | '''tc5027-multiple_cue_component''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 352: | Line 378: | ||
</pre> | </pre> | ||
− | == | + | =='''Tests that should FAIL'''== |
===Cue Text Format=== | ===Cue Text Format=== | ||
Line 358: | Line 384: | ||
* Using the <[valid cue text component]>[Text Payload]<[valid cue text component]/> notation | * Using the <[valid cue text component]>[Text Payload]<[valid cue text component]/> notation | ||
+ | '''tc5028-cue_text_format''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 365: | Line 392: | ||
</pre> | </pre> | ||
+ | '''tc5029-cue_text_format''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 372: | Line 400: | ||
</pre> | </pre> | ||
+ | '''tc5030-cue_text_format''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 379: | Line 408: | ||
</pre> | </pre> | ||
+ | '''tc5031_-cue_text_format''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 386: | Line 416: | ||
</pre> | </pre> | ||
+ | '''tc5032_-cue_text_format''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 393: | Line 424: | ||
</pre> | </pre> | ||
+ | '''tc5033_-cue_text_format''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 400: | Line 432: | ||
</pre> | </pre> | ||
+ | '''tc5034_-cue_text_format''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 405: | Line 438: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
We <i><b>are</i> in </b> New York City | We <i><b>are</i> in </b> New York City | ||
+ | </pre> | ||
+ | |||
+ | ===Disallow Annotation Text=== | ||
+ | |||
+ | *There are cue components that do not allow annotations in them | ||
+ | |||
+ | '''tc5035-disallow_annotation_italic''' | ||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:15.000 | ||
+ | We <i Annotation Here>are in New York City</i> | ||
</pre> | </pre> | ||
− | ===Cue Text Special Character Escape Format=== | + | '''tc5036-disallow_annotation_underline''' |
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:15.000 | ||
+ | We <u Annotation Here>are in New York City</u> | ||
+ | </pre> | ||
+ | |||
+ | '''tc5037-disallow_annotation_bold''' | ||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:15.000 | ||
+ | We <b Annotation Here>are in New York City</b> | ||
+ | </pre> | ||
+ | |||
+ | '''tc5038-disallow_annotation_class''' | ||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:15.000 | ||
+ | We <c Annotation Here>are in New York City</c> | ||
+ | </pre> | ||
+ | |||
+ | '''tc5039-disallow_annotation_ruby''' | ||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:15.000 | ||
+ | We <ruby Annotation Here>are in New York City</ruby> | ||
+ | </pre> | ||
+ | |||
+ | '''tc5040-disallow_annotation_time_stamp''' | ||
+ | <pre> | ||
+ | 00:11.000 --> 00:15.000 | ||
+ | We <00:13.000 Annotation Here>are in New York City | ||
+ | </pre> | ||
+ | |||
+ | ===Cue Text Class Format=== | ||
+ | |||
+ | '''tc5041-special_char_in_sub_class''' | ||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | We <i.&amp;>are</i> in New York City | ||
+ | </pre> | ||
+ | |||
+ | '''tc5042-period_with_no_sub_class''' | ||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | We <i. >are</i> in New York City | ||
+ | </pre> | ||
+ | |||
+ | '''tc5043-incorrect_cue_class''' | ||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | We <badclass>are<badclass> in New York City | ||
+ | </pre> | ||
+ | |||
+ | '''tc5044-special_char_in_sub_class''' | ||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | We <i.class.&amp;>are</i> in New York City | ||
+ | </pre> | ||
+ | |||
+ | === TC5100 Cue Text Special Character Escape Format=== | ||
* checking if the parser correctly invalidates improper special character escapes | * checking if the parser correctly invalidates improper special character escapes | ||
+ | '''Ampersand''' | ||
+ | '''tc5045-incorrect_ampersand'''' | ||
<pre> | <pre> | ||
WEBVTT | WEBVTT | ||
Line 445: | Line 564: | ||
Test Ampersand escape: &p; | Test Ampersand escape: &p; | ||
</pre> | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Ampersand escape: ≈ | ||
+ | </pre> | ||
+ | |||
+ | '''Less Than Character''' | ||
<pre> | <pre> | ||
Line 450: | Line 578: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
− | Test | + | Test Less Than escape: &l; |
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Less Than escape: &t; | ||
+ | </pre> | ||
+ | |||
+ | '''Greater Than Character''' | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Greater Than escape: &g; | ||
+ | </pre> | ||
+ | |||
+ | '''Space Character''' | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &n; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &nb; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &nbs; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &nbp; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &nsp; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &bsp; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &bp; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &b; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &s; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &ns; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Space Character escape: &np; | ||
</pre> | </pre> | ||
Line 457: | Line 680: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
− | Test | + | Test Space Character escape: &sp; |
− | </pre> | + | </pre> |
<pre> | <pre> | ||
Line 464: | Line 687: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
− | & | + | Test Space Character escape: &s; |
</pre> | </pre> | ||
Line 471: | Line 694: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
− | & | + | Test Space Character escape: &p; |
</pre> | </pre> | ||
Line 478: | Line 701: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
− | & | + | Test Space Character escape: &bs; |
− | </pre> | + | </pre> |
+ | |||
+ | '''Left to Right Character''' | ||
<pre> | <pre> | ||
Line 485: | Line 710: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
− | & | + | Test Left to Right Mark Character escape: &lr; |
</pre> | </pre> | ||
− | + | <pre> | |
+ | WEBVTT | ||
− | + | 00:11.000 --> 00:13.000 | |
− | + | Test Left To Right Mark Character escape: &l; | |
− | + | </pre> | |
<pre> | <pre> | ||
Line 498: | Line 724: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
− | + | Test Left to Right Mark Character escape: &lm; | |
− | </pre> | + | </pre> |
<pre> | <pre> | ||
Line 505: | Line 731: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
− | + | Test Left to Right Mark Character escape: &rm; | |
</pre> | </pre> | ||
Line 512: | Line 738: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
− | + | Test Left to Right Mark Character escape: &m; | |
− | </pre> | + | </pre> |
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Left to Right Mark Character escape: &r; | ||
+ | </pre> | ||
+ | |||
+ | '''Right to Left Mark Character''' | ||
<pre> | <pre> | ||
Line 519: | Line 754: | ||
00:11.000 --> 00:13.000 | 00:11.000 --> 00:13.000 | ||
− | + | Test Right to Left Mark Character escape: &lm; | |
</pre> | </pre> | ||
− | + | <pre> | |
+ | WEBVTT | ||
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Right to Left Mark Character escape: &rm; | ||
+ | </pre> | ||
<pre> | <pre> | ||
− | WEBVTT | + | WEBVTT |
+ | |||
+ | 00:11.000 --> 00:13.000 | ||
+ | Test Right to Left Mark Character escape: &rl; | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | WEBVTT | ||
− | 00:11.000 --> 00: | + | 00:11.000 --> 00:13.000 |
− | + | &rlm | |
− | </pre> | + | </pre> |
<pre> | <pre> | ||
− | WEBVTT | + | WEBVTT |
− | 00:11.000 --> 00: | + | 00:11.000 --> 00:13.000 |
− | + | &lr | |
</pre> | </pre> | ||
<pre> | <pre> | ||
− | WEBVTT | + | WEBVTT |
− | 00:11.000 --> 00: | + | 00:11.000 --> 00:13.000 |
− | + | > | |
</pre> | </pre> | ||
<pre> | <pre> | ||
− | WEBVTT | + | WEBVTT |
− | 00:11.000 --> 00: | + | 00:11.000 --> 00:13.000 |
− | + | < | |
</pre> | </pre> | ||
+ | |||
+ | ===Cue Text Special Characters=== | ||
+ | |||
+ | * checking if the parser correctly invalidates special characters without escapes | ||
+ | |||
+ | |||
<pre> | <pre> | ||
− | WEBVTT | + | WEBVTT |
− | 00:11.000 --> 00: | + | 00:11.000 --> 00:13.000 |
− | + | Test Ampersand Special Character: & | |
</pre> | </pre> | ||
+ | |||
+ | ===Cue Text Time Stamp=== | ||
<pre> | <pre> | ||
Line 563: | Line 818: | ||
00:11.000 --> 00:15.000 | 00:11.000 --> 00:15.000 | ||
− | We <00: | + | We <00:16.000>are in New York City |
</pre> | </pre> | ||
− | |||
− | |||
− | |||
− | |||
<pre> | <pre> | ||
Line 574: | Line 825: | ||
00:11.000 --> 00:15.000 | 00:11.000 --> 00:15.000 | ||
− | We < | + | We <00:13.000>are in New <00:12.000>York City |
− | </pre> | + | </pre> |
<pre> | <pre> | ||
Line 581: | Line 832: | ||
00:11.000 --> 00:15.000 | 00:11.000 --> 00:15.000 | ||
− | We < | + | We <00:12000>are in New York City |
− | </pre> | + | </pre> |
<pre> | <pre> | ||
Line 588: | Line 839: | ||
00:11.000 --> 00:15.000 | 00:11.000 --> 00:15.000 | ||
− | We < | + | We <0012.000>are in New York City |
− | </pre> | + | </pre> |
<pre> | <pre> | ||
Line 595: | Line 846: | ||
00:11.000 --> 00:15.000 | 00:11.000 --> 00:15.000 | ||
− | We < | + | We <00:12.00>are in New York City |
− | </pre> | + | </pre> |
<pre> | <pre> | ||
Line 602: | Line 853: | ||
00:11.000 --> 00:15.000 | 00:11.000 --> 00:15.000 | ||
− | We < | + | We <00:12.000 are in New York City |
− | |||
− | |||
− | |||
− | 00: | ||
− | |||
</pre> | </pre> | ||
Latest revision as of 13:48, 30 September 2012
Contents
- 1 Group 5 Members
- 2 Cue Text Scope
- 3 Notes/Issues/Updates
- 4 Test Scenarios Identified
- 5 Concrete Tests
Group 5 Members
Name | IRC Nick | Blog | Github Account | Wiki Page | |
Rick Eyre | reyre | http://epsilon812.wordpress.com | RickEyre | User:Errichard | @epsilon812 |
Shayan Zafar Ahmad | szahmad | Shayan's Blog | Shayan's GitHub | User:Szahmad | ShayanZafar |
Michael Afidchao | mdafidchao | http://kypertrast.net/seneca | mafidchao | User:Mdafidchao | None |
Jordan Raffoul | jbraffoul | http://jbraffoul.wordpress.com | jbraffoul | User:Jbraffoul | None |
Cue Text Scope
WebVTT chapter title text is syntactically a subset of WebVTT cue text, and WebVTT cue text is syntactically a subset of WebVTT metadata text. Conformance checkers, when validating WebVTT files, may offer to restrict all cues to only having WebVTT chapter title text or WebVTT cue text as their cue payload; WebVTT metadata text cues are only useful for scripted applications (using the metadata text track kind).
A WebVTT file whose cues all have a cue payload that is WebVTT chapter title text is said to be a WebVTT file using chapter title text.
A WebVTT file whose cues all have a cue payload that is WebVTT cue text is said to be a WebVTT file using cue text. By definition, any file that is a WebVTT file using chapter title text is also a WebVTT file using cue text.
WebVTT Cue Text consists of WebVTT cue components. This might overlap with cue text css group.
Specifications: http://dev.w3.org/html5/webvtt/#webvtt-metadata-text
Notes/Issues/Updates
Rick
Sept 24
- Changed title headers
- Began adding concrete tests
- Added Testing Scenarios
Shayan
Jordan
Michael
- These escape characters don't appear to be accepted by the parser: ‎ ‏
- I have taken TC5100-TC5123, these tests are all related to multiple components
Test Scenarios Identified
Notes:
- Marked Names Next too Scenarios for those who have done work/reviewed
- Crossed out scenario has been completed
Base/Metadata tests
-
No cue text- Jordan, Rick -
No cue text with line feed character(s)- Jordan, Rick -
No cue text with carriage return character(s)- Jordan, Rick -
No cue text with a combination of line feed and carriage return character(s)- Jordan, Rick -
Simple one-line of cue text - no other components- Rick -
multiple-line text- Rick Eyre, Shayan-
line terminator in between- Shayan
-
Chapter Title Text
-
Cue text consisting of only an ampersand escape character- Rick Eyre, Shayan -
Cue text consisting of only a less than escape character- Rick Eyre, Shayan -
Cue text consisting of only a greater than escape character- Rick Eyre, Shayan -
Cue text consisting of only a left-to-right escape character- Rick Eyre, Shayan -
Cue text consisting of only a right-to-left escape character- Rick Eyre, Shayan -
Cue text consisting of only an nbsp escape character- Rick Eyre, Shayan - Cue text different combinations (vary tests for different components: multiple ampersands, all types of components, etc.) - Shayan
- 2+ components that are separated from each other with line terminators - Michael Afidchao
- Cue text including escape character(s)
- Line terminators
Cue Text
Note that these may overlap with group 6 - text tags, we'll probably only need to cover cue text that uses a span tag and cue text that uses 2+ span tags.
We'll cover these for sure:
-
Cue Components with annotations- Rick Eyre -
Cue Component followed by one or more Cue Component with an optional WebVTT line terminator separating them- Rick Eyre, Shayan - Start Tag format - < with the tag name and optionally a . with a word/letter describing the significance of the class, cannot be line terminator, space, tab, ampersand escapes. repeated if necessary - Rick Eyre
- Cue text that uses a span tag
- Cue text that uses 2+ span tags - Michael Afidchao
- Separated with line terminator - Michael Afidchao
- Cue Text that consists of internal text only
- Cue Text Time Stamp - Rick Eyre
These should automatically be covered by the text tags testing (group 6) as they create tests for each tag:
-
Cue text that uses a class span tag- Rick Eyre -
Cue text that uses an italics span tag- Rick Eyre -
Cue text that uses a bold span tag- Rick Eyre -
Cue text that uses an underline span tag- Rick Eyre - Cue text that uses a ruby span tag - Jordan Raffoul
- Cue text that uses a voice span tag - Jordan Raffoul
-
Cue text that uses a timestamp tag- Rick Eyre -
Cue Text that has many different cue components nested- Rick Eyre, Shayan
Concrete Tests
Tests that should PASS
Cue Text Format
tc5001-multiple_cue_text_component
WEBVTT 00:11.000 --> 00:13.000 Hey <i>this is a <b>test!</b></i>
tc5002-multiple_line_cue_text_component
WEBVTT 00:11.000 --> 00:13.000 <u> <i> <b>Hey this is a test!</b></i></u>
tc5003-cue_text_single_sub_class
WEBVTT 00:11.000 --> 00:13.000 <u.class>Hey this is a test!</u>
tc5004-cue_text_multiple_sub_class
WEBVTT 00:11.000 --> 00:13.000 <u.class.subclass>Hey this is a test!</u>
No Cue Text
tc5005-no_cue_text
- There will be multiple test files with combinations of carriage return characters and or line feed characters in combination.
WEBVTT 00:11.000 --> 00:13.000
Basic Cue Text Span
tc5006-basic_cue_text
- Basic cue text with no modifiers
WEBVTT 00:11.000 --> 00:13.000 We are in New York City
Cue Text Span With Multiple Lines
tc5007-multiple_line_basic_cue_text
WEBVTT 0:11.000 --> 00:13.000 We are in New York City The Weather is nice
Basic Cue Text with Ampersand Escape Characters
tc5008-less_than_escape_character
WEBVTT 00:11.000 --> 00:13.000 <
tc5009-greater_than_escape_character
WEBVTT 00:11.000 --> 00:13.000 >
tc5010-ampersan_escape_character
WEBVTT 00:11.000 --> 00:13.000 &
tc5011-non_breaking_space_character
WEBVTT 00:11.000 --> 00:13.000
tc5012-left_to_right_escape_character
WEBVTT 00:11.000 --> 00:13.000 ‎
tc5013-right_to_left_escape_character
WEBVTT 00:11.000 --> 00:13.000 ‏
Chapter Text with Multiple Escape Characters
tc50140-multiple_escape_characters
WEBVTT 00:11.000 --> 00:15.000
tc5015-multiple_escape_characters_and_lines
WEBVTT 00:11.000 --> 00:15.000
Cue Text with Cue Components
Italic Cue Text
tc5016-italic_cue_test
WEBVTT 00:11.000 --> 00:13.000 We <i>are</i> in New York City
Bold Cue Text
tc5017-bold_cue_text
WEBVTT 00:11.000 --> 00:13.000 We <b>are</b> in New York City
Underline Cue Text
tc5018-underline_cue_text
WEBVTT 00:11.000 --> 00:13.000 We <u>are</u> in New York City
Voice Cue Text
tc5019-voice_cue_component
WEBVTT 00:11.000 --> 00:13.000 <v Roger Bingham>We are in New York City
tc5020-internal_voice_cue_text
WEBVTT 00:11.000 --> 00:13.000 <v Roger Bingham>We are in New York City</v>
tc5021-multiple_line_voice_cue_text
WEBVTT 00:11.000 --> 00:13.000 <v Roger Bingham>When we e-mailed—</v> <v Neil deGrasse Tyson>Didn't we talk about enough in that conversation?</v>
Time Stamp Cue Text
tc5022-time_stamp_cue_component
WEBVTT 00:11.000 --> 00:15.000 We <00:12.000>are in New York City
tc5023-multiple_time_stamp_cue_component
WEBVTT 00:11.000 --> 00:15.000 We <00:12.000>are in<0:13.000> New York City
Class Cue Text
tc5024-class_cue_component
WEBVTT 00:11.000 --> 00:15.000 We <c>are</c> in New York City
Multiple Component Cue Text
tc5025-multiple_cue_component
WEBVTT 00:11.000 --> 00:15.000 We <b>are</b> in <b>New York</b> City
tc5026-multiLine_multiple_cue_component
WEBVTT 00:11.000 --> 00:15.000 We <b>are</b> <b>in</b> New York City
tc5027-multiple_cue_component
WEBVTT 00:11.000 --> 00:15.000 We <b>are</b><b>in</b> New York City
Tests that should FAIL
Cue Text Format
- Using the <[valid cue text component]>[Text Payload]<[valid cue text component]/> notation
tc5028-cue_text_format
WEBVTT 00:11.000 --> 00:13.000 We <i are</i> in New York City
tc5029-cue_text_format
WEBVTT 00:11.000 --> 00:13.000 We <iare</i> in New York City
tc5030-cue_text_format
WEBVTT 00:11.000 --> 00:13.000 We <i>are</i in New York City
tc5031_-cue_text_format
WEBVTT 00:11.000 --> 00:13.000 We <i>are<i> in New York City
tc5032_-cue_text_format
WEBVTT 00:11.000 --> 00:13.000 We <i>are i> in New York City
tc5033_-cue_text_format
WEBVTT 00:11.000 --> 00:13.000 We <i>are<i in New York City
tc5034_-cue_text_format
WEBVTT 00:11.000 --> 00:13.000 We <i><b>are</i> in </b> New York City
Disallow Annotation Text
- There are cue components that do not allow annotations in them
tc5035-disallow_annotation_italic
WEBVTT 00:11.000 --> 00:15.000 We <i Annotation Here>are in New York City</i>
tc5036-disallow_annotation_underline
WEBVTT 00:11.000 --> 00:15.000 We <u Annotation Here>are in New York City</u>
tc5037-disallow_annotation_bold
WEBVTT 00:11.000 --> 00:15.000 We <b Annotation Here>are in New York City</b>
tc5038-disallow_annotation_class
WEBVTT 00:11.000 --> 00:15.000 We <c Annotation Here>are in New York City</c>
tc5039-disallow_annotation_ruby
WEBVTT 00:11.000 --> 00:15.000 We <ruby Annotation Here>are in New York City</ruby>
tc5040-disallow_annotation_time_stamp
00:11.000 --> 00:15.000 We <00:13.000 Annotation Here>are in New York City
Cue Text Class Format
tc5041-special_char_in_sub_class
WEBVTT 00:11.000 --> 00:13.000 We <i.&>are</i> in New York City
tc5042-period_with_no_sub_class
WEBVTT 00:11.000 --> 00:13.000 We <i. >are</i> in New York City
tc5043-incorrect_cue_class
WEBVTT 00:11.000 --> 00:13.000 We <badclass>are<badclass> in New York City
tc5044-special_char_in_sub_class
WEBVTT 00:11.000 --> 00:13.000 We <i.class.&>are</i> in New York City
TC5100 Cue Text Special Character Escape Format
- checking if the parser correctly invalidates improper special character escapes
Ampersand
tc5045-incorrect_ampersand'
WEBVTT 00:11.000 --> 00:13.000 Test Ampersand escape: &a;
WEBVTT 00:11.000 --> 00:13.000 Test Ampersand escape: &am;
WEBVTT 00:11.000 --> 00:13.000 Test Ampersand escape: &m;
WEBVTT 00:11.000 --> 00:13.000 Test Ampersand escape: ∓
WEBVTT 00:11.000 --> 00:13.000 Test Ampersand escape: &p;
WEBVTT 00:11.000 --> 00:13.000 Test Ampersand escape: ≈
Less Than Character
WEBVTT 00:11.000 --> 00:13.000 Test Less Than escape: &l;
WEBVTT 00:11.000 --> 00:13.000 Test Less Than escape: &t;
Greater Than Character
WEBVTT 00:11.000 --> 00:13.000 Test Greater Than escape: &g;
Space Character
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &n;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &nb;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &nbs;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &nbp;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &nsp;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &bsp;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &bp;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &b;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &s;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &ns;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &np;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &sp;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &s;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &p;
WEBVTT 00:11.000 --> 00:13.000 Test Space Character escape: &bs;
Left to Right Character
WEBVTT 00:11.000 --> 00:13.000 Test Left to Right Mark Character escape: &lr;
WEBVTT 00:11.000 --> 00:13.000 Test Left To Right Mark Character escape: &l;
WEBVTT 00:11.000 --> 00:13.000 Test Left to Right Mark Character escape: &lm;
WEBVTT 00:11.000 --> 00:13.000 Test Left to Right Mark Character escape: &rm;
WEBVTT 00:11.000 --> 00:13.000 Test Left to Right Mark Character escape: &m;
WEBVTT 00:11.000 --> 00:13.000 Test Left to Right Mark Character escape: &r;
Right to Left Mark Character
WEBVTT 00:11.000 --> 00:13.000 Test Right to Left Mark Character escape: &lm;
WEBVTT 00:11.000 --> 00:13.000 Test Right to Left Mark Character escape: &rm;
WEBVTT 00:11.000 --> 00:13.000 Test Right to Left Mark Character escape: &rl;
WEBVTT 00:11.000 --> 00:13.000 &rlm
WEBVTT 00:11.000 --> 00:13.000 &lr
WEBVTT 00:11.000 --> 00:13.000 >
WEBVTT 00:11.000 --> 00:13.000 <
Cue Text Special Characters
- checking if the parser correctly invalidates special characters without escapes
WEBVTT 00:11.000 --> 00:13.000 Test Ampersand Special Character: &
Cue Text Time Stamp
WEBVTT 00:11.000 --> 00:15.000 We <00:16.000>are in New York City
WEBVTT 00:11.000 --> 00:15.000 We <00:13.000>are in New <00:12.000>York City
WEBVTT 00:11.000 --> 00:15.000 We <00:12000>are in New York City
WEBVTT 00:11.000 --> 00:15.000 We <0012.000>are in New York City
WEBVTT 00:11.000 --> 00:15.000 We <00:12.00>are in New York City
WEBVTT 00:11.000 --> 00:15.000 We <00:12.000 are in New York City
Cue Text with Multiple Escape Characters
WEBVTT 00:11.000 --> 00:15.000
Multiple Cue Text Components
WEBVTT 00:11.000 --> 00:15.000 We <b>are</b> <b>in</b> New York City