Difference between revisions of "Cue Text, including replacements"

From CDOT Wiki
Jump to: navigation, search
(Cue Text Special Character Escape Format)
(TEST:5100 Cue Text Special Character Escape Format)
Line 524: Line 524:
 
</pre>
 
</pre>
  
=== TEST:5100 Cue Text Special Character Escape Format===
+
=== 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

Revision as of 22:20, 27 September 2012

Group 5 Members

Name IRC Nick Blog Github Account Wiki Page Twitter
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

Ruby Annotations

Michael

Sept 24

  • These escape characters don't appear to be accepted by the parser: &nbsp; &lrm; &rlm;

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_MultipleCueTextComponent

WEBVTT

00:11.000 --> 00:13.000
Hey <i>this is a <b>test!</b></i>

TC5002_MultipleLineCueTextComponent

WEBVTT

00:11.000 --> 00:13.000
<u>
<i>
<b>Hey this is a test!</b></i></u>

TC5003_CueTextSingleSubClass

WEBVTT

00:11.000 --> 00:13.000
<u.class>Hey this is a test!</u>

TC5004_CueTextMultipleSubClass

WEBVTT

00:11.000 --> 00:13.000
<u.class.subclass>Hey this is a test!</u>

No Cue Text

TC5005_NoCueText

  • 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_BasicCueText

  • 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_MultipleLineBasicCueText

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_LessThanEscapeCharacter

WEBVTT 

00:11.000 --> 00:13.000
&lt;

TC5009_GreaterThanEscapeCharacter

WEBVTT 

00:11.000 --> 00:13.000
&gt;

TC5010_AmpersanEscapeCharacter

WEBVTT 

00:11.000 --> 00:13.000
&amp;

TC5011_NonBreakingSpaceCharacter

WEBVTT 

00:11.000 --> 00:13.000
&nbsp;

TC5012_LeftToRightEscapeCharacter

WEBVTT 

00:11.000 --> 00:13.000
&lrm;

TC5013_RightToLeftEscapeCharacter

WEBVTT 

00:11.000 --> 00:13.000
&rlm;

Chapter Text with Multiple Escape Characters

TC5014_MultipleEscapeCharacters

WEBVTT

00:11.000 --> 00:15.000
&nbsp;&nbsp;

TC5015_MultipleEscapeCharactersAndLines

WEBVTT

00:11.000 --> 00:15.000
&nbsp;
&nbsp;

Cue Text with Cue Components

Italic Cue Text

TC5016_ItalicCueTest

WEBVTT 

00:11.000 --> 00:13.000
We <i>are</i> in New York City

Bold Cue Text

TC5017_BoldCueText

WEBVTT 

00:11.000 --> 00:13.000
We <b>are</b> in New York City

Underline Cue Text

TC5018_UnderlineCueText

WEBVTT

00:11.000 --> 00:13.000
We <u>are</u> in New York City

Voice Cue Text

TC5019_VoiceCueComponent

WEBVTT

00:11.000 --> 00:13.000
<v Roger Bingham>We are in New York City

TC5020_InternalVoiceCueText

WEBVTT

00:11.000 --> 00:13.000
<v Roger Bingham>We are in New York City</v>

TC5021_MultipleLineVoiceCueText

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_TimeStampCueComponent

WEBVTT

00:11.000 --> 00:15.000
We <00:12.000>are in New York City

TC5023_MultipleTimeStampCueComponent

WEBVTT

00:11.000 --> 00:15.000
We <00:12.000>are in<0:13:00> New York City

Class Cue Text

TC5024_ClassCueComponent

WEBVTT

00:11.000 --> 00:15.000
We <c>are</c> in New York City

Multiple Component Cue Text

TC5025_MultipleCueComponent

WEBVTT

00:11.000 --> 00:15.000
We <b>are</b> in <b>New York</b> City

TC5026_MultiLineMultipleCueComponent

WEBVTT

00:11.000 --> 00:15.000
We <b>are</b>
<b>in</b> New York City

TC5027_MultipleCueComponent

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_CueTextFormat

WEBVTT 

00:11.000 --> 00:13.000
We <i are</i> in New York City

TC5029_CueTextFormat

WEBVTT 

00:11.000 --> 00:13.000
We <iare</i> in New York City

TC5030_CueTextFormat

WEBVTT 

00:11.000 --> 00:13.000
We <i>are</i in New York City

TC5031_CueTextFormat

WEBVTT 

00:11.000 --> 00:13.000
We <i>are<i> in New York City

TC5032_CueTextFormat

WEBVTT  

00:11.000 --> 00:13.000
We <i>are i> in New York City

TC5033_CueTextFormat

WEBVTT  

00:11.000 --> 00:13.000
We <i>are<i in New York City

TC5034_CueTextFormat

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_DisallowAnnotationItalic

WEBVTT

00:11.000 --> 00:15.000
We <i Annotation Here>are in New York City</i>

TC5036_DisallowAnnotationUnderline

WEBVTT

00:11.000 --> 00:15.000
We <u Annotation Here>are in New York City</u>

TC5037_DisallowAnnotationBold

WEBVTT

00:11.000 --> 00:15.000
We <b Annotation Here>are in New York City</b>

TC5038_DisallowAnnotationClass

WEBVTT

00:11.000 --> 00:15.000
We <c Annotation Here>are in New York City</c>

TC5039_DisallowAnnotationRuby

WEBVTT

00:11.000 --> 00:15.000
We <ruby Annotation Here>are in New York City</ruby>

TC5040_DisallowAnnotationTimeStamp

00:11.000 --> 00:15.000
We <00:13.000 Annotation Here>are in New York City

Cue Text Class Format

TC5041_SpecialCharInSubClass

WEBVTT  

00:11.000 --> 00:13.000
We <i.&amp;>are</i> in New York City

TC5042_PeriodWithNoSubclass

WEBVTT  

00:11.000 --> 00:13.000
We <i. >are</i> in New York City

TC5043_IncorrectCueClass

WEBVTT  

00:11.000 --> 00:13.000
We <badclass>are<badclass> in New York City

TC5044_SpecialCharInSubclass

WEBVTT  

00:11.000 --> 00:13.000
We <i.class.&amp;>are</i> in New York City

TC5100 Cue Text Special Character Escape Format

  • checking if the parser correctly invalidates improper special character escapes

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: &mp;
WEBVTT  

00:11.000 --> 00:13.000
Test Ampersand escape: &p;
 
WEBVTT  

00:11.000 --> 00:13.000
Test Ampersand escape: &ap;

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
&gt
WEBVTT  

00:11.000 --> 00:13.000
&lt

Cue Text Special Characters

  • checking if the parser correctly invalidates special characters without escapes

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
&nbsp;

&nbsp;

Multiple Cue Text Components

WEBVTT

00:11.000 --> 00:15.000
We <b>are</b>

<b>in</b> New York City