value-dt-test-YYYY-MM-DD--HH-MMZ-EE-NN-UUZ

From Microformats Wiki
Jump to navigation Jump to search

One of several value class pattern date and time value test cases. Marked up with the Test Fixture poshformats.

author
Tantek Çelik

testing

The value-dt-test-YYYY-MM-DD--HH-MMZ-EE-NN-UUZ test demonstrate the concatenation of two html elements to create one datetime value. The date for dtend is implied from the dtstart date:

  • YYYY-MM-DD
  • HH:MMZ
  • HH:MM:SSZ
  • hCalendar dtend implied date

in an hCalendar 1.0 event.


markup pattern

Here is the markup pattern fragment (escaped, and with abstract not real values) that is being tested:

<span class="dtstart">
 <span class="value">YYYY-MM-DD</span> 
 from
 <span class="value">HH:MMZ</span>
</span>
to
<span class="dtend">
 <span class="value">EE:NN:UUZ</span>
</span>


test

hCalendar 1.0 test in actual markup on the page (view or edit source to see actual hCalendar markup)

When
2009-07-26 from 16:04Z to 17:18:19Z
Where
Automattic, Pier 38, The Embarcadero between Brannan and Townsend, San Francisco, CA, 94107. View location at latitude:37.782769, longitude:-122.387837
What
volunteer prep and breakfast setup for day two of microformatsDevCamp
URLs
http://microformats.org/wiki/events/2009-07-25-dev-camp
http://upcoming.org/event/2888376/

expected iCalendar output

Here is the expected iCalendar output. Note that properties may appear in a different order inside the BEGIN:VEVENT END:VEVENT block, and optional "X-" properties, implementation specific "PRODID" property, and "CHARSET" parameter have been omitted (and thus implementation may include those and still pass this test):

BEGIN:VCALENDAR
VERSION:2.0
METHOD:PUBLISH
CALSCALE:GREGORIAN
BEGIN:VEVENT
LOCATION;LANGUAGE=en:Automattic\, Pier 38\, The Embarcadero between Brannan and Townsend\, San Francisco\, CA\, 94107. View location at latitude:37.782769\, longitude:-122.387837
SUMMARY;LANGUAGE=en:day two of microformatsDevCamp!
URL:http://microformats.org/wiki/events/2009-07-25-dev-camp
DTSTART;VALUE=DATE-TIME:20090726T160400Z
DTEND;VALUE=DATE-TIME:20090726T171819Z
GEO:37.782769;-122.387837
END:VEVENT
END:VCALENDAR

The key lines that an hCalendar to iCalendar converter must match in order to pass this test:

DTSTART;VALUE=DATE-TIME:20090726T160400Z
DTEND;VALUE=DATE-TIME:20090726T171819Z

Acceptable variant:

DTSTART:20090726T160400Z
DTEND:20090726T171819Z

Asserts

A set of programming tests for xUnit testing frameworks
Test Result Comment
vevent[0].dtstart IsEqualToISODate("2009-07-26T16:04Z") With the value class pattern the results should contain a time
vevent[0].dtend IsEqualToISODate("2009-07-26T17:18:19Z") With the value class pattern the results should contain a time

results

derivation

This test was derived from value-dt-test-YYYY-MM-DD--0Ham-EEam.

see also