#include <stdio.h>
#include <string.h>
#include "vcaltmp.h"

#if 0
This testcase would generate a file call "frankcal.vcf" with
the following content:

BEGIN:VCALENDAR
DCREATED:19960523T100522
GEO:37.24,-17.87
PRODID:-//Frank Dawson/Hand Crafted In North Carolina//NONSGML Made By Hand//EN
VERSION:0.3
BEGIN:VEVENT
DTSTART:19960523T120000
DTEND:19960523T130000
DESCRIPTION;QUOTED-PRINTABLE:VERSIT PDI PR Teleconference/Interview =0A=
With Tom Streeter and Frank Dawson - Discuss VERSIT PDI project and vCard and vCalendar=0A=
activities with European Press representatives.
SUMMARY:VERSIT PDI PR Teleconference/Interview
SUBTYPE:PHONE CALL
STATUS:CONFIRMED
TRANSP:19960523T100522-4000F100582713-009251
UID:http://www.ibm.com/raleigh/fdawson/~c:\or2\orgfiles\versit.or2
DALARM:19960523T114500;5;3;Your Telecon Starts At Noon!!!;
MALARM:19960522T120000;;;fdawson@raleigh.ibm.com;Remember 05/23 Noon Telecon!!!;
PALARM:19960523T115500;;;c:\or2\organize.exe c:\or2\orgfiles\versit.or2;
X-LDC-OR2-OLE:c:\temp\agenda.doc
END:VEVENT

BEGIN:VTODO
DUE:19960614T0173000
DESCRIPTION:Review VCalendar helper API.
END:VTODO

END:VCALENDAR

#endif

FILE *cfp;

void testVcalAPIs() {
    FILE *fp;
    VObject *vcal, *vevent;
#if _CONSOLE
    cfp = stdout;
#else
    cfp = fopen("vcaltest.out","w");
#endif
    if (cfp == 0) return;
    vcal = vcsCreateVCal(
	"19960523T100522",
	"37.24,-17.87",
	"-//Frank Dawson/Hand Crafted In North Carolina//NONSGML Made By Hand//EN",
	0,
	"0.3"
	);

    vevent = vcsAddEvent(
	vcal,
	"19960523T120000",
	"19960523T130000",
	"VERSIT PDI PR Teleconference/Interview \nWith Tom Streeter and Frank Dawson - Discuss VERSIT PDI project and vCard and vCalendar\nactivities with European Press representatives.",
	"VERSIT PDI PR Teleconference/Interview",
	"PHONE CALL",
	0,
	"CONFIRMED",
	"19960523T100522-4000F100582713-009251",
	"http://www.ibm.com/raleigh/fdawson/~c:\\or2\\orgfiles\\versit.or2",
	0
	);
    
    vcsAddDAlarm(vevent, "19960523T114500", "5", "3",
	    "Your Telecon Starts At Noon!!!");
    vcsAddMAlarm(vevent, "19960522T120000", 0, 0, "fdawson@raleigh.ibm.com",
	    "Remember 05/23 Noon Telecon!!!");
    vcsAddPAlarm(vevent, "19960523T115500", 0 ,0,
	    "c:\\or2\\organize.exe c:\\or2\\orgfiles\\versit.or2");
    
    addPropValue(vevent, "X-LDC-OR2-OLE", "c:\\temp\\agenda.doc");

    vcsAddTodo(
	vcal,
	0,
	"19960614T0173000",
	0,
	"Review VCalendar helper API.",
	0,
	0,
	0,
	0,
	0,
	0
	);

    /* now do something to the resulting VObject */
    /* pretty print on stdout for fun */
    printVObject(cfp,vcal);
    /* open the output text file */

#define OUTFILE "frankcal.vcf"

    fp = fopen(OUTFILE, "w");
    if (fp) {
	/* write it in text form */
	writeVObject(fp,vcal);
	fclose(fp);
	}
    else {
	fprintf(cfp,"open output file '%s' failed\n", OUTFILE);
	}
    if (cfp != stdout) fclose(cfp);
    }

void main() {
    testVcalAPIs();
    }

/electron4/files/y18n-3.2.2'>dependabot/npm_and_yarn/devel/electron4/files/y18n-3.2.2</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/elliptic-6.5.3'>dependabot/npm_and_yarn/devel/electron6/files/elliptic-6.5.3</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/elliptic-6.5.4'>dependabot/npm_and_yarn/devel/electron6/files/elliptic-6.5.4</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/ini-1.3.8'>dependabot/npm_and_yarn/devel/electron6/files/ini-1.3.8</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/lodash-4.17.19'>dependabot/npm_and_yarn/devel/electron6/files/lodash-4.17.19</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/lodash.merge-4.6.2'>dependabot/npm_and_yarn/devel/electron6/files/lodash.merge-4.6.2</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/node-fetch-2.6.1'>dependabot/npm_and_yarn/devel/electron6/files/node-fetch-2.6.1</option>
<option value='dependabot/npm_and_yarn/devel/electron6/files/serve-10.1.2'>dependabot/npm_and_yarn/devel/electron6/files/serve-10.1.2</option>
<option value='gnome-3.22'>gnome-3.22</option>
<option value='gnome-3.24'>gnome-3.24</option>
<option value='gnome-3.26'>gnome-3.26</option>
<option value='gnome-3.28'>gnome-3.28</option>
<option value='gnome-3.32'>gnome-3.32</option>
<option value='gnome-3.36'>gnome-3.36</option>
<option value='gstreamer' selected='selected'>gstreamer</option>
<option value='gstreamer-1.16'>gstreamer-1.16</option>
<option value='gstreamer0.10-removal'>gstreamer0.10-removal</option>
<option value='main'>main</option>
<option value='master'>master</option>
<option value='mate-1.16'>mate-1.16</option>
<option value='mate-1.18'>mate-1.18</option>
<option value='mate-1.20'>mate-1.20</option>
<option value='mate-1.22'>mate-1.22</option>
</select> <input type='submit' value='switch'/></form></td></tr>
<tr><td class='sub'>FreeBSD GNOME current development ports (https://github.com/freebsd/freebsd-ports-gnome)</td><td class='sub right'></td></tr></table>
<table class='tabs'><tr><td>
<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/about/?h=gstreamer'>about</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/?h=gstreamer'>summary</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/refs/?h=gstreamer'>refs</a><a class='active' href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/sysutils/cfengine-masterfiles37?h=gstreamer'>log</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/tree/sysutils/cfengine-masterfiles37?h=gstreamer'>tree</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/sysutils/cfengine-masterfiles37?h=gstreamer'>commit</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/diff/sysutils/cfengine-masterfiles37?h=gstreamer'>diff</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/stats/sysutils/cfengine-masterfiles37?h=gstreamer'>stats</a></td><td class='form'><form class='right' method='get' action='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/sysutils/cfengine-masterfiles37'>
<input type='hidden' name='h' value='gstreamer'/><select name='qt'>
<option value='grep'>log msg</option>
<option value='author'>author</option>
<option value='committer'>committer</option>
<option value='range'>range</option>
</select>
<input class='txt' type='search' size='10' name='q' value=''/>
<input type='submit' value='search'/>
</form>
</td></tr></table>
<div class='path'>path: <a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/?h=gstreamer'>root</a>/<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/sysutils?h=gstreamer'>sysutils</a>/<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/sysutils/cfengine-masterfiles37?h=gstreamer'>cfengine-masterfiles37</a></div><div class='content'><table class='list nowrap'><tr class='nohover'><th></th><th class='left'>Commit message (<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/log/sysutils/cfengine-masterfiles37?h=gstreamer&amp;showmsg=1'>Expand</a>)</th><th class='left'>Author</th><th class='left'>Age</th><th class='left'>Files</th><th class='left'>Lines</th></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/sysutils/cfengine-masterfiles37?h=gstreamer&amp;id=fa438d1de7795b62c08fba48513120dd48d443c7'>Register conflicts among the syslog-ng family of ports.</a></td><td>cy</td><td><span title='2018-02-04 05:40:08 +0800'>2018-02-04</span></td><td>1</td><td><span class='deletions'>-0</span>/<span class='insertions'>+2</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/sysutils/cfengine-masterfiles37?h=gstreamer&amp;id=441443674827629ac9ce6f6b6f43156d04085279'>- Fix shebangs</a></td><td>miwi</td><td><span title='2017-04-24 20:58:02 +0800'>2017-04-24</span></td><td>1</td><td><span class='deletions'>-1</span>/<span class='insertions'>+4</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/sysutils/cfengine-masterfiles37?h=gstreamer&amp;id=75e710fbe17056a400d7885d0617f56c771bb67f'>- Fix WWW</a></td><td>amdmi3</td><td><span title='2017-04-18 00:39:45 +0800'>2017-04-18</span></td><td>1</td><td><span class='deletions'>-1</span>/<span class='insertions'>+1</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/sysutils/cfengine-masterfiles37?h=gstreamer&amp;id=749c3072f3ea1809a09111a3ad0363362a9a16e1'>Welcome the new cfengine and cfengine-masterfiles 3.10.</a></td><td>cy</td><td><span title='2016-12-29 15:11:50 +0800'>2016-12-29</span></td><td>1</td><td><span class='deletions'>-1</span>/<span class='insertions'>+1</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/sysutils/cfengine-masterfiles37?h=gstreamer&amp;id=45ba13d1e49146362ab1681ab213b5cd54b34f55'>Update cfengine37 and cfengine-masterfiles37 to 3.7.3.</a></td><td>cy</td><td><span title='2016-04-26 22:09:34 +0800'>2016-04-26</span></td><td>2</td><td><span class='deletions'>-3</span>/<span class='insertions'>+3</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/sysutils/cfengine-masterfiles37?h=gstreamer&amp;id=2ff80f55375ee2811ca2895a06b853699c3e0915'>Remove ${PORTSDIR}/ from dependencies, categories r, s, t, and u.</a></td><td>mat</td><td><span title='2016-04-01 22:25:16 +0800'>2016-04-01</span></td><td>1</td><td><span class='deletions'>-1</span>/<span class='insertions'>+1</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/sysutils/cfengine-masterfiles37?h=gstreamer&amp;id=2dca2981f651ee0d6b5965ba63f9229deed3058b'>Correct CONFLICTS.</a></td><td>cy</td><td><span title='2016-01-12 10:52:19 +0800'>2016-01-12</span></td><td>1</td><td><span class='deletions'>-1</span>/<span class='insertions'>+1</span></td></tr>
<tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports-gnome/commit/sysutils/cfengine-masterfiles37?h=gstreamer&amp;id=032a13e1645a1c4633a2ac211ff5a36f2e259528'>Correct test.</a></td><td>cy</td><td><span title='2015-12-07 11:25:29 +0800'>2015-12-07</span></td><td>1</td><td><span class='deletions'>-1</span>/<span class='insertions'>+1</span></td></tr>