value-dt-test-YYYY-MM-DD--HH-MM-XX--EE-NN-UU--Y

(Difference between revisions)

Jump to: navigation, search
m (Corrected asserts values)
Current revision (05:59, 4 April 2017) (view source)
(fix upcoming link)
 
Line 45: Line 45:
;URLs
;URLs
:<span class="url">http://microformats.org/wiki/events/2009-07-25-dev-camp</span>
:<span class="url">http://microformats.org/wiki/events/2009-07-25-dev-camp</span>
-
:<span class="url">http://upcoming.yahoo.com/event/2888376/</span>
+
:<span class="url">http://upcoming.org/event/2888376/</span>
</div> <!-- end vevent -->
</div> <!-- end vevent -->
</div> <!-- end test -->
</div> <!-- end test -->

Current revision

One of several value class pattern date and time value test cases. Marked up with the test-fixture poshformat.

author
Tantek Çelik

Contents

testing

The value-dt-test-YYYY-MM-DD--HH-MM-XX--EE-NN-UU--Y test demonstrate the concatenation of two html elements to create one datetime value which contains a timezone offset. The date for dtend is implied from the dtstart date:

  • YYYY-MM-DD
  • HH:MM+XX
  • HH:MM:SS
  • +X
  • hCalendar dtend implied date

in an hCalendar 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:MM+XX</span>
</span>
to
<span class="dtend">
 <span class="value">EE:NN:UU</span> offset
 <span class="value">+Y</span> from UTC.
</span>


test

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

When
2009-07-26 from 22:04+06 to 23:18:19 offset +6 from UTC.
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-26T22:04+06") With the value class pattern the results should contain a time
vevent[0].dtend IsEqualToISODate("2009-07-26T23:18:19+06") With the value class pattern the results should contain a time

results

derivation

This test was derived from value-dt-test-YYYY-MM-DD--HH-MM-XX-YY--EE-NN-UU--XXYY.

see also

value-dt-test-YYYY-MM-DD--HH-MM-XX--EE-NN-UU--Y was last modified: Tuesday, April 4th, 2017

Views