value-dt-test-YYYY-MM-DD--HHpm--abbr-XX
One of several value class pattern date and time value test cases. Marked up with the test-fixture poshformat.
- author
testing
The value-dt-test-YYYY-MM-DD--HHpm--abbr-XX test demonstrates the concatenation of three html elements to create one datetime value. The time element contains text demarking the use of a 12 hour clock i.e. "pm", and the timezone is specified in a separate abbr element:
- YYYY-MM-DD
- Hpm
- XX in abbr element title attribute
- HHpm
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>
at
<span class="value">Hpm</span>
<abbr class="value" title="-XX00">Pacific</abbr>
</span>
to
<span class="dtend">
<span class="value">YYYY-MM-DD</span>
at
<span class="value">EEpm</span>
</span>
test
hCalendar test in actual markup on the page (view or edit source to see actual hCalendar markup)
- When
- 2009-06-26 at 7pm Pacific Daylight to 2009-06-26 at 10pm
- Where
- B Restaurant and Bar, 720 Howard Street, Yerba Buena Upper Terrace, San Francisco, CA 94103 USA
- What
- microformats.org 4th birthday party!
- Web
- http://microformats.org/wiki/events/2009-06-26-microformats-4th-bday
- http://upcoming.yahoo.com/event/3010807
- Donation
- Donation requested at the door: sliding scale $5-$20.
expected iCalendar output
Here is the expected iCalendar output, omitting optional "X-" properties, and implementation specific "PRODID" property:
BEGIN:VCALENDAR
VERSION:2.0
METHOD:PUBLISH
CALSCALE:GREGORIAN
BEGIN:VEVENT
LOCATION;LANGUAGE=en;CHARSET=utf-8:B Restaurant and Bar\, 720 Howard Street\, Yerba Buena Upper Terrace\, San Francisco\, CA 94103 USA
SUMMARY;LANGUAGE=en;CHARSET=utf-8:microformats.org 4th birthday party!
URL:http://microformats.org/wiki/events/2009-06-26-microformats-4th-bday
DTSTART;VALUE=DATE-TIME:20090626T190000-0700
DTEND;VALUE=DATE-TIME:20090626T220000-0700
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:20090626T190000-0700
DTEND;VALUE=DATE-TIME:20090626T220000-0700
Acceptable variant:
DTSTART:20090626T190000-0700
DTEND:20090626T220000-0700
Asserts
Test | Result | Comment |
---|---|---|
vevent[0].dtstart | IsEqualToISODate("2009-06-26T19:00-0700") | With the value class pattern the results should contain a time |
vevent[0].dtend | IsEqualToISODate("2009-06-26T22:00-0700") | With the value class pattern the results should contain a time |
results
- 2012-01-04: created based on value-dt-test-YYYY-MM-DD--HHpm from use case discovered on Mozilla SEO wiki page.
derivation
This test was derived from value-dt-test-YYYY-MM-DD--HHpm.