TestCases

From Media Fragments Working Group Wiki
Jump to: navigation, search

Test Cases Approval

For an introduction and motivation of the Test Cases see the Test Cases Overview page on this Wiki. For a discussion around the TC and issues in the review process see the Test Cases Discussion page.

NOTE: we are currently setting up a semi-automated infrastructure for handling the TC, called corrib. The goal is that in the mid term the TC below will disappear and everything (from editing TC over to creating the TC manifest doc as well as the test suite will be done with corrib).

The following defaults are assumed in the current, manual Test Suite:

base: http://example.org/media

test schema: http://www.w3.org/2006/03/test-description

input: we only specify the actual MF content (that is, everything the URI fragment content, including the '#')

output: 
    200 ... response with an HTTP 200 status code, indicating that range ok or entire representation returned
    416 ... response with an HTTP 416 status code indicating that an empty resource is returned

expectedResults: true (that is, per default a positive test. set explicitly to 'false' if you want to flag a negative test)

CLASS0 MF-TC: MF semantics

Prupose of the CLASS0 TC is testing the MF semantics itself.

TC0000: empty MF

contributor: Michael Hausenblas
title: empty MF
input: #
output: 200, the entire representation is returned
purpose: Tests, if an empty MF yields the entire resource to be returned.
reviewStatus: approved as of 2009-05-13

TC0001: undefined time segment - npt

contributor: Michael Hausenblas
title: complete time segment - npt
input: #t=,
output: 200, the entire representation is returned
purpose: Tests, if an undefined time segment (with npt as the default) yields an complete resource to be returned.
reviewStatus: approved as of 2009-05-13

TC0002: empty time segment - npt

contributor: Michael Hausenblas
title: empty time segment - npt
input: #t=0,0
output: 416, would yield an empty resource, hence client must have erred
purpose: Tests, if an empty time segment (with npt as the default) yields an empty resource to be returned.
reviewStatus: unreviewed

TC0003: empty space segment

contributor: Michael Hausenblas
title: empty space segment
input: #xywh=0,0,0,0
output: 416, would yield an empty resource, hence client must have erred
purpose: Tests, if an empty space segment yields an empty resource to be returned.
reviewStatus: approved as of 2009-08-12

TC0004: empty space segment - aspect

contributor: Michael Hausenblas
title: empty space segment - aspect
input: #aspect=0:0
output: 416, would yield an empty resource, hence client must have erred
purpose: Tests, if an empty space segment defined via aspect ratio yields an empty resource to be returned.
reviewStatus: approved as of 2009-08-12

TC0005: undefined track segment

contributor: Michael Hausenblas
title: empty track segment
input: #track=''
output: 200, the entire representation is returned
purpose: Tests, if an empty track segment yields the entire representation is returned
reviewStatus: approved as of 2009-08-12

TC0006: undefined named segment

contributor: Michael Hausenblas
title: empty named segment
input: #id=''
output: 200, the entire representation is returned
purpose: Tests, if an empty named segment yields an empty resource to be returned.
reviewStatus: approved as of 2009-08-12

TC0007: base multiple segment

contributor: Michael Hausenblas
title: base multiple segment
input: #t=,&id='ID0'
output: 200, return representation for named fragment ID0
purpose: Tests, if an undefined time segment, and a named fragment yields the named fragmend.
reviewStatus: approved as of 2009-08-12

TC0008: legacy deep link

contributor: David Singer
title: legacy deep link
input: #t=10
output: 200, return representation from second 10 on
purpose: Tests, if legacy implementation such as with Google video still works.
reviewStatus: unreviewed

TC0009: plain fragment identifier

contributor: Conrad Parker
title: plain fragment identifier
input: #test
output: 200, process as defined in the media type registry entry.
purpose: Tests, if a plain fragment identifier that is not in our scope (not in audio, image, video/* space) still works. We assume that from the BASE URI there is additionally an representation served with, e.g. text/html.
reviewStatus: unreviewed

TC0010: base multiple segment empty time

contributor: Michael Hausenblas
title: base multiple segment
input: #t=0,0&id='ID0'
output: 416, would yield an empty resource, hence client must have erred
purpose: Tests, if at least one dimension is empty, an empty resource is returned.
reviewStatus: unreviewed

TC0011: base multiple segment non-existent ID

contributor: Michael Hausenblas
title: base multiple segment
input: #t=,&id='none'
output: 416, would yield an empty resource, hence client must have erred
purpose: Tests, if at least one dimension is undefined, an empty resource is returned.
reviewStatus: unreviewed

TC0012: base multiple segment non-existent track

contributor: Michael Hausenblas
title: base multiple segment
input: #t=,&track='none'
output: 416, would yield an empty resource, hence client must have erred
purpose: Tests, if at least one dimension is undefined, an empty resource is returned.
reviewStatus: unreviewed

CLASS1 MF-TC: HTTP Request Headers

CLASS2 MF-TC: HTTP Response Headers