diff options
author | JP Rosevear <jpr@src.gnome.org> | 2003-11-19 00:33:30 +0800 |
---|---|---|
committer | JP Rosevear <jpr@src.gnome.org> | 2003-11-19 00:33:30 +0800 |
commit | 58f1b46675ef29528f51e5c44fe0e087bda5d82d (patch) | |
tree | 725648cf84182762d9dc2ac5846b233203411d59 /libical/src/test/regression-classify.c | |
parent | b47685534d7e5738d712962334537bb329831b9e (diff) | |
download | gsoc2013-evolution-58f1b46675ef29528f51e5c44fe0e087bda5d82d.tar gsoc2013-evolution-58f1b46675ef29528f51e5c44fe0e087bda5d82d.tar.gz gsoc2013-evolution-58f1b46675ef29528f51e5c44fe0e087bda5d82d.tar.bz2 gsoc2013-evolution-58f1b46675ef29528f51e5c44fe0e087bda5d82d.tar.lz gsoc2013-evolution-58f1b46675ef29528f51e5c44fe0e087bda5d82d.tar.xz gsoc2013-evolution-58f1b46675ef29528f51e5c44fe0e087bda5d82d.tar.zst gsoc2013-evolution-58f1b46675ef29528f51e5c44fe0e087bda5d82d.zip |
Remove libical from this tree, it resides in e-d-s now.
svn path=/trunk/; revision=23417
Diffstat (limited to 'libical/src/test/regression-classify.c')
-rw-r--r-- | libical/src/test/regression-classify.c | 187 |
1 files changed, 0 insertions, 187 deletions
diff --git a/libical/src/test/regression-classify.c b/libical/src/test/regression-classify.c deleted file mode 100644 index 7af64499f3..0000000000 --- a/libical/src/test/regression-classify.c +++ /dev/null @@ -1,187 +0,0 @@ -/* -*- Mode: C -*- - ====================================================================== - FILE: regression-classify.c - CREATOR: eric 11 February 2000 - - $Id$ - $Locker$ - - (C) COPYRIGHT 2000 Eric Busboom - http://www.softwarestudio.org - - The contents of this file are subject to the Mozilla Public License - Version 1.0 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See - the License for the specific language governing rights and - limitations under the License. - - The Original Code is eric. The Initial Developer of the Original - Code is Eric Busboom - - - ======================================================================*/ -#include <stdio.h> /* for printf */ -#include <errno.h> -#include <string.h> /* For strerror */ - -#include <libical/ical.h> -#include <libicalss/icalss.h> -#include "regression.h" - -extern int VERBOSE; - -/* Get a note about the purpose of the property*/ -static const char* get_note(icalcomponent *c) -{ - icalproperty *p; - const char* note = 0; - - if(c != 0){ - for(p = icalcomponent_get_first_property(c,ICAL_X_PROPERTY); - p!= 0; - p = icalcomponent_get_next_property(c,ICAL_X_PROPERTY)){ - if(strcmp(icalproperty_get_x_name(p),"X-LIC-NOTE")==0){ - note = icalproperty_get_x(p); - } - } - } - - if(note == 0){ - note = "None"; - } - - return note; -} - -/* Get the expected result about the purpose of the property*/ - -static const char* get_expect(icalcomponent *c) -{ - icalproperty *p; - const char* note = 0; - - if(c != 0){ - for(p = icalcomponent_get_first_property(c,ICAL_X_PROPERTY); - p!= 0; - p = icalcomponent_get_next_property(c,ICAL_X_PROPERTY)){ - if(strcmp(icalproperty_get_x_name(p),"X-LIC-EXPECT")==0){ - note = icalproperty_get_x(p); - } - } - } - - if(note == 0){ - note = "None"; - } - - return note; -} - -void test_classify(void) -{ - icalcomponent *c,*match; - int i=0; - int error_count = 0; - /* Open up the two storage files, one for the incomming components, - one for the calendar */ - icalset* incoming = icalset_new_file("../../test-data/incoming.ics"); - icalset* cal = icalset_new_file("../../test-data/calendar.ics"); - icalset* f = icalset_new_file("../../test-data/classify.ics"); - - ok("opening file classify.ics", (f!=0)); - ok("opening file calendar.ics", (cal!=0)); - ok("opening file incoming.ics", (incoming!=0)); - - /* some basic tests.. */ - if (f) { - c = icalset_get_first_component(f); - match = icalset_get_next_component(f); - - ok("test two vcalendars for SEQUENCE with icalclassify()", - (icalclassify(c,match,"A@example.com") == ICAL_XLICCLASS_REQUESTRESCHEDULE)); - - icalset_free(f); - } - - assert(incoming!= 0); - assert(cal!=0); - - /* Iterate through all of the incoming components */ - for(c=icalset_get_first_component(incoming);c!=0; - c=icalset_get_next_component(incoming)){ - - icalproperty_xlicclass class; - icalcomponent *match = 0; - const char* this_uid; - const char* this_note = get_note(c); - const char* expected_result = get_expect(c); - const char* actual_result; - const char* match_note; - char msg[128]; - - i++; - - /* Check this component against the restrictions imposed by - iTIP. An errors will be inserted as X-LIC-ERROR properties - in the component. The Parser will also insert errors if it - cannot parse the component */ - icalcomponent_check_restrictions(c); - - /* If there are any errors, print out the component */ - - error_count = icalcomponent_count_errors(c); - sprintf(msg, "%s - parsing", this_note); - int_is(msg, error_count, 0); - - if (error_count !=0) { - if (VERBOSE) printf("----- Component has errors ------- \n%s-----------------\n", - icalcomponent_as_ical_string(c)); - } - - /* Use one of the icalcomponent convenience routines to get - the UID. This routine will save you from having to use - icalcomponent_get_inner(), - icalcomponent_get_first_property(), checking the return - value, and then calling icalproperty_get_uid. There are - several other convenience routines for DTSTART, DTEND, - DURATION, SUMMARY, METHOD, and COMMENT */ - this_uid = icalcomponent_get_uid(c); - - if(this_uid != 0){ - /* Look in the calendar for a component with the same UID - as the incomming component. We should reall also be - checking the RECURRENCE-ID. Another way to do this - operation is to us icalset_find_match(), which does use - the RECURRENCE-ID. */ - match = icalset_fetch(cal,this_uid); - } - - - /* Classify the incoming component. The third argument is the - calid of the user who owns the calendar. In a real program, - you would probably switch() on the class.*/ - class = icalclassify(c,match,"A@example.com"); - /** eventually test this too.. **/ - match_note = get_note(match); - actual_result = icalproperty_enum_to_string(class); - sprintf(msg, "expecting %s", expected_result); - is(msg, expected_result, actual_result); - - if (VERBOSE) printf("Test %d\n\ -Incoming: %s\n\ -Matched: %s\n\ -Classification: %s\n\n", - i,this_note,get_note(match), - icalproperty_enum_to_string(class)); - } - - icalset_free(incoming); - icalset_free(cal); - -} - - |