value-dt-test-YYYY-MM-DD--HH-MM: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
(Add ufxtract pass)
(→‎Asserts: Updated table semantics for assertions.)
Line 79: Line 79:


== Asserts ==
== Asserts ==
The table below describes a set of programming tests for XUnit testing parsers. 


    <table id="assetTable" cellpadding="0" cellspacing="0">
<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> 
     <thead>
         <tr>
         <tr>
             <th>Test</th>
             <th>Test</th>
Line 88: Line 88:
             <th>Comment</th>
             <th>Comment</th>
         </tr>
         </tr>
    
    </thead>
   <tbody>
         <tr class="assert">
         <tr class="assert">
             <td class="test">vevent[0].dtstart</td>
             <td class="test">vevent[0].dtstart</td>
             <td class="result">IsEqualToISODate("2009-06-26T19:00")</td>
             <td class="result">IsEqualToISODate("2009-06-26T19:00")</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>      
       
         <tr class="assert">
         <tr class="assert">
             <td class="test">vevent[0].dtend</td>
             <td class="test">vevent[0].dtend</td>
Line 100: Line 100:
             <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>
 
    </tbody>
    </table>
</table>
 
 


== results ==
== results ==

Revision as of 01:58, 4 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--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>

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.

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
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

Acceptable variant:

DTSTART:20090626T190000
DTEND:20090626T220000

Asserts

<thead> </thead> <tbody> </tbody>
A set of programming tests for xUnit testing frameworks
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

results

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.

see also