value-dt-test-YYYY-MM-DD--HH-MM: Difference between revisions
m (→results: fix Operator version) |
(another test with date and time in separately nested spans) |
||
Line 22: | Line 22: | ||
</source> | </source> | ||
and | and variants with intermediate spans | ||
<source lang=html4strict> | <source lang=html4strict> | ||
Line 32: | Line 32: | ||
</span> | </span> | ||
</span> | </span> | ||
<span class="dtstart"> | |||
<span> | |||
<span class="value">YYYY-MM-DD</span> | |||
at | |||
<span> | |||
<span class="value">HH:MM</span> | |||
</span> | |||
</span> | |||
</span> | |||
</source> | </source> | ||
Line 64: | Line 75: | ||
;What | ;What | ||
:<span class="summary">microformats.org 4th birthday after-party!</span> | :<span class="summary">microformats.org 4th birthday after-party!</span> | ||
;Web | |||
:no URL | |||
</div> <!-- end vevent --> | |||
</div> <!-- end test --> | |||
<div class="test" id="uf3"> | |||
<div class="vevent"> | |||
;When | |||
:<span class="dtstart"><span><span class="value">2009-06-26</span> at <span><span class="value">23:17</span></span></span></span> to <span class="dtend"><span><span class="value">2009-06-26</span> at <span><span class="value">23:48</span></span></span></span> | |||
;Where | |||
:<span class="location adr">En route in <span class="locality">San Francisco</span>, <span class="region">CA</span>, <span class="country-name">USA</span></span> | |||
;What | |||
:<span class="summary">microformats.org 4th birthday after-after</span> | |||
;Web | ;Web | ||
:no URL | :no URL | ||
Line 91: | Line 115: | ||
DTSTART;VALUE=DATE-TIME:20090626T220500 | DTSTART;VALUE=DATE-TIME:20090626T220500 | ||
DTEND;VALUE=DATE-TIME:20090626T230600 | DTEND;VALUE=DATE-TIME:20090626T230600 | ||
END:VEVENT | |||
BEGIN:VEVENT | |||
LOCATION;LANGUAGE=en;CHARSET=utf-8:En route in San Francisco\, CA\, USA | |||
SUMMARY;LANGUAGE=en;CHARSET=utf-8:microformats.org 4th birthday after-after | |||
DTSTART;VALUE=DATE-TIME:20090626T221700 | |||
DTEND;VALUE=DATE-TIME:20090626T234800 | |||
END:VEVENT | END:VEVENT | ||
Line 110: | Line 141: | ||
DTSTART;VALUE=DATE-TIME:20090626T220500 | DTSTART;VALUE=DATE-TIME:20090626T220500 | ||
DTEND;VALUE=DATE-TIME:20090626T230600 | DTEND;VALUE=DATE-TIME:20090626T230600 | ||
</source> | |||
and | |||
<source lang=text> | |||
DTSTART;VALUE=DATE-TIME:20090626T221700 | |||
DTEND;VALUE=DATE-TIME:20090626T234800 | |||
</source> | </source> | ||
Line 124: | Line 162: | ||
DTSTART:20090626T220500 | DTSTART:20090626T220500 | ||
DTEND:20090626T230600 | DTEND:20090626T230600 | ||
</source> | |||
and | |||
<source lang=text> | |||
DTSTART:20090626T221700 | |||
DTEND:20090626T234800 | |||
</source> | </source> | ||
Line 153: | Line 198: | ||
<td class="test">vevent[1].dtend</td> | <td class="test">vevent[1].dtend</td> | ||
<td class="result">IsEqualToISODate("2009-06-26T23:06")</td> | <td class="result">IsEqualToISODate("2009-06-26T23:06")</td> | ||
<td class="comment">With the value class pattern the results should contain a time</td> | |||
</tr> | |||
<tr class="assert"> | |||
<td class="test">vevent[2].dtstart</td> | |||
<td class="result">IsEqualToISODate("2009-06-26T22:17")</td> | |||
<td class="comment">With the value class pattern the results should contain a time</td> | |||
</tr> | |||
<tr class="assert"> | |||
<td class="test">vevent[2].dtend</td> | |||
<td class="result">IsEqualToISODate("2009-06-26T23:48")</td> | |||
<td class="comment">With the value class pattern the results should contain a time</td> | <td class="comment">With the value class pattern the results should contain a time</td> | ||
</tr> | </tr> |
Revision as of 21:28, 4 January 2012
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--HH-MM test demonstrate the concatenation of two html elements to create one datetime value:
- YYYY-MM-DD
- HH:MM
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">HH:MM</span>
</span>
and variants with intermediate spans
<span class="dtstart">
<span>
<span class="value">YYYY-MM-DD</span>
at
<span class="value">HH:MM</span>
</span>
</span>
<span class="dtstart">
<span>
<span class="value">YYYY-MM-DD</span>
at
<span>
<span class="value">HH:MM</span>
</span>
</span>
</span>
Similarly with dtend
.
test
hCalendar test in actual markup on the page (view or edit source to see actual hCalendar markup)
- When
- 2009-06-26 at 19:00 to 2009-06-26 at 22:00
- 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.
- When
- 2009-06-26 at 22:05 to 2009-06-26 at 23:06
- Where
- Somewhere in San Francisco, CA, USA
- What
- microformats.org 4th birthday after-party!
- Web
- no URL
- When
- 2009-06-26 at 23:17 to 2009-06-26 at 23:48
- Where
- En route in San Francisco, CA, USA
- What
- microformats.org 4th birthday after-after
- Web
- no URL
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
DTEND;VALUE=DATE-TIME:20090626T220000
END:VEVENT
BEGIN:VEVENT
LOCATION;LANGUAGE=en;CHARSET=utf-8:Somewhere in San Francisco\, CA\, USA
SUMMARY;LANGUAGE=en;CHARSET=utf-8:microformats.org 4th birthday after-party!
DTSTART;VALUE=DATE-TIME:20090626T220500
DTEND;VALUE=DATE-TIME:20090626T230600
END:VEVENT
BEGIN:VEVENT
LOCATION;LANGUAGE=en;CHARSET=utf-8:En route in San Francisco\, CA\, USA
SUMMARY;LANGUAGE=en;CHARSET=utf-8:microformats.org 4th birthday after-after
DTSTART;VALUE=DATE-TIME:20090626T221700
DTEND;VALUE=DATE-TIME:20090626T234800
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
DTEND;VALUE=DATE-TIME:20090626T220000
and
DTSTART;VALUE=DATE-TIME:20090626T220500
DTEND;VALUE=DATE-TIME:20090626T230600
and
DTSTART;VALUE=DATE-TIME:20090626T221700
DTEND;VALUE=DATE-TIME:20090626T234800
Acceptable variant:
DTSTART:20090626T190000
DTEND:20090626T220000
and
DTSTART:20090626T220500
DTEND:20090626T230600
and
DTSTART:20090626T221700
DTEND:20090626T234800
Asserts
Test | Result | Comment |
---|---|---|
vevent[0].dtstart | IsEqualToISODate("2009-06-26T19:00") | With the value class pattern the results should contain a time |
vevent[0].dtend | IsEqualToISODate("2009-06-26T22:00") | With the value class pattern the results should contain a time |
vevent[1].dtstart | IsEqualToISODate("2009-06-26T22:05") | With the value class pattern the results should contain a time |
vevent[1].dtend | IsEqualToISODate("2009-06-26T23:06") | With the value class pattern the results should contain a time |
vevent[2].dtstart | IsEqualToISODate("2009-06-26T22:17") | With the value class pattern the results should contain a time |
vevent[2].dtend | IsEqualToISODate("2009-06-26T23:48") | With the value class pattern the results should contain a time |
results
- 2009-06-26: Brian Suda's X2V has been updated (as of X2V 0.9.3) to pass this test! See Brian Suda's X2V hCalendar-2-iCalendar converter on his site to re-run and verify this test case for yourself. Or use this converter link to produce results from this test case page directly:
- 2009-11-03: UfXtract has been updated to pass this test. To re-run and verify this test case try:
- 2012-01-04: Added second test case to test intermediate span.
- second test case appears to work in X2V 0.9.7, but FAIL (no time given) in Operator 0.9.5.6. Tantek 20:40, 4 January 2012 (UTC)
derivation
This test was derived from events/2009-06-26-microformats-4th-bday which used the hCard defined value-excerption-pattern to provide more readable and accessible date and time information.