value-dt-test-YYYY-MM-DD--12am-12pm: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
(fix derivation)
m (Corrected asserts values)
 
(2 intermediate revisions by 2 users not shown)
Line 5: Line 5:
:<span class="author vcard"><span class="fn">[[User:Tantek|Tantek Çelik]]</span></span>
:<span class="author vcard"><span class="fn">[[User:Tantek|Tantek Çelik]]</span></span>


<div class="description">
 
<div class="summary">
== testing ==
== testing ==
[[value-class-pattern]] date and time parsing:
<span class="description">The <span class="summary">value-dt-test-YYYY-MM-DD--12am-12pm</span> test demonstrate the concatenation of two html elements to create one datetime value. The time element contains text demarking the use of 12 hour clock i.e. "am and pm". The date for dtend is implied from the dtstart date:</span>
* YYYY-MM-DD
* YYYY-MM-DD
* 12am
* 12am
Line 15: Line 14:
in an <span class="format">[[hCalendar]]</span> event.
in an <span class="format">[[hCalendar]]</span> event.


</div> <!-- summary -->
 


== markup pattern ==
== markup pattern ==
Line 32: Line 31:
</source>
</source>


</div> <!-- description -->
 


== test ==
== test ==
Line 77: Line 76:
DTEND:20090626T120000
DTEND:20090626T120000
</source>
</source>
== Asserts ==
<table cellpadding="0" cellspacing="0" summary="Testing framework assertions used to test the parsed data against the expected data.">
  <caption>A set of programming tests for xUnit testing frameworks</caption> 
        <tr>
            <th>Test</th>
            <th>Result</th>
            <th>Comment</th>
        </tr>
        <tr class="assert">
            <td class="test">vevent[0].dtstart</td>
            <td class="result">IsEqualToISODate("2009-06-26T00")</td>
            <td class="comment">With the value class pattern the results should contain a time</td>
        </tr>       
        <tr class="assert">
            <td class="test">vevent[0].dtend</td>
            <td class="result">IsEqualToISODate("2009-06-26T12")</td>
            <td class="comment">With the value class pattern the results should contain a time</td>
        </tr>
</table>


== results ==
== results ==
<div class="history">
<div class="history">
* 2009: Brian Suda's [[X2V]] has been updated (as of X2V 0.9.5) to pass this test! See [http://suda.co.uk/projects/X2V/#H2I 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:
** http://suda.co.uk/projects/microformats/hcalendar/get-cal.php?uri=http://microformats.org/wiki/value-dt-test-YYYY-MM-DD--12am-12pm%23uf
** verified by [[User:Tantek]] 2009-10-03.
</div><!--history -->
</div><!--history -->
</div> <!-- test-fixture -->
</div> <!-- test-fixture -->

Latest revision as of 11:41, 5 November 2009

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

author
Tantek Çelik


testing

The value-dt-test-YYYY-MM-DD--12am-12pm test demonstrate the concatenation of two html elements to create one datetime value. The time element contains text demarking the use of 12 hour clock i.e. "am and pm". The date for dtend is implied from the dtstart date:

  • YYYY-MM-DD
  • 12am
  • 12pm
  • 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">12am</span>
</span>
to
<span class="dtend">
 <span class="value">12pm</span>
</span>


test

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

When
2009-06-26 from 12am to 12pm
What
first half of the day before the microformats.org 4th birthday party

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
SUMMARY;LANGUAGE=en;CHARSET=utf-8:first half of the day before the microformats.org 4th birthday party!
DTSTART;VALUE=DATE-TIME:20090626T000000
DTEND;VALUE=DATE-TIME:20090626T120000
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:20090626T000000
DTEND;VALUE=DATE-TIME:20090626T120000

Acceptable variant:

DTSTART:20090626T000000
DTEND:20090626T120000

Asserts

A set of programming tests for xUnit testing frameworks
Test Result Comment
vevent[0].dtstart IsEqualToISODate("2009-06-26T00") With the value class pattern the results should contain a time
vevent[0].dtend IsEqualToISODate("2009-06-26T12") With the value class pattern the results should contain a time

results

derivation

This test was derived from value-dt-test-YYYY-MM-DD--Hpm-EEpm.

see also