Difference between revisions of "value-dt-test-YYYY-MM-DD--HH-MM"

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

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 1.0 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 1.0 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 microformats.org 4th birthday party! which used the hCard 1.0 defined Value Class Pattern to provide more readable and accessible date and time information.

see also