2 * Copyright 2012 Samsung Electronics Co., Ltd
4 * Licensed under the Flora License, Version 1.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.tizenopensource.org/license
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
21 #define MT_CHECK_EQUAL(arg1, arg2) arg1 != arg2 ? \
22 fprintf(stderr,"[VOBJECT-TEST-CASE] %s %s:%d NOT EQUAL\n",__FILE__,__FUNCTION__,__LINE__) :\
23 fprintf(stderr,"[VOBJECT-TEST-CASE] %s %s:%d EQUAL\n",__FILE__,__FUNCTION__,__LINE__);
25 #define VDATA_TEST_TRACE(fmt, arg...) \
26 do { {fprintf(stderr, "[VOBJECT-TEST-CASE] %s %s:%d: " fmt,__FILE__,__FUNCTION__, __LINE__, ##arg);}}while (false);
29 /** decode a raw buffer to a tree */
30 void utc_vdata_vcard_decode_1()
35 buffer = g_strdup("BEGIN:VCARD\r\nVERSION:2.1\r\nN:Martin;Stephen\r\nTEL;HOME;VOICE:+1 (210) 555-1357\r\nTEL;HOME;FAX:+1 (210) 555-0864\r\nADR;WORK;PARCEL;POSTAL;DOM:123 Cliff Ave.;Big Town;CA;97531\r\nEND:VCARD");
37 tree = VCardDecode(buffer);
38 VDATA_TEST_TRACE("call executed \n");
40 if(!(tree != NULL)) return;
42 VDATA_TEST_TRACE("treetype is %d \n", tree->treeType);
45 VDATA_TEST_TRACE("decodeing faili - utc_vdata_vcard_decode_%d",1);
48 VDATA_TEST_TRACE ("top property is %d \n", tree->pTop->property);
49 VDATA_TEST_TRACE ("top property value is %s \n", *(tree->pTop->pszValue));
51 if (tree->pTop->pParam){
52 VDATA_TEST_TRACE ("top param is %d \n", tree->pTop->pParam->parameter);
53 VDATA_TEST_TRACE ("top param val is %d \n", tree->pTop->pParam->paramValue);
57 VDATA_TEST_TRACE ("cur property is %d \n", tree->pCur->property);
58 VDATA_TEST_TRACE ("top property value is %s \n", *(tree->pCur->pszValue));
61 if (!(tree->pTop->pSibling)){
62 VDATA_TEST_TRACE("decodeing faili - utc_vdata_vcard_decode_%d",1);
66 VDATA_TEST_TRACE ("sibling not NULL \n");
67 VDATA_TEST_TRACE ("sibling property is %d \n", tree->pTop->pSibling->property);
68 VDATA_TEST_TRACE ("sibling property value is %s \n", *(tree->pTop->pSibling->pszValue));
70 if (tree->pTop->pSibling->pParam){
71 VDATA_TEST_TRACE ("sibling param is %d \n", tree->pTop->pSibling->pParam->parameter);
72 VDATA_TEST_TRACE ("sibling param val is %d \n", tree->pTop->pSibling->pParam->paramValue);
75 VDATA_TEST_TRACE("decodeing success - utc_vdata_vcard_decode_%d\n",1);
77 VObject* pSibling2 = tree->pTop->pSibling->pSibling;
81 VDATA_TEST_TRACE ("sibling2 not NULL \n");
82 VDATA_TEST_TRACE ("sibling2 property is %d \n", pSibling2->property);
83 VDATA_TEST_TRACE ("sibling2 property value is %s \n", *(pSibling2->pszValue));
85 if (pSibling2->pParam){
86 VDATA_TEST_TRACE ("sibling param is %d \n", pSibling2->pParam->parameter);
87 VDATA_TEST_TRACE ("sibling param val is %d \n", pSibling2->pParam->paramValue);
90 if (tree->pTop->pParent)
91 VDATA_TEST_TRACE ("parent not NULL \n");
92 if (tree->pTop->pChild)
93 VDATA_TEST_TRACE ("child not NULL \n");
100 /** decode a raw buffer without begin token to a tree */
101 void utc_vdata_vcard_decode_2()
103 gchar *buffer = NULL;
106 buffer = g_strdup("VERSION:2.1\r\nN:Martin;Stephen\r\nTEL;HOME;VOICE:+1 (210) 555-1357\r\nTEL;HOME;FAX:+1 (210) 555-0864\r\nADR;WORK;PARCEL;POSTAL;DOM:123 Cliff Ave.;Big Town;CA;97531\r\nEND:VCARD");
108 tree = VCardDecode(buffer);
109 VDATA_TEST_TRACE("call executed \n");
111 if(!(tree != NULL)) VDATA_TEST_TRACE("tree is null");
117 /*decode a raw buffer without end token to a tree*/
118 void utc_vdata_vcard_decode_3()
120 gchar *buffer = NULL;
123 buffer = g_strdup("BEGIN:VCARD\r\nVERSION:2.1\r\nN:Martin;Stephen\r\nTEL;HOME;VOICE:+1 (210) 555-1357\r\nTEL;HOME;FAX:+1 (210) 555-0864\r\nADR;WORK;PARCEL;POSTAL;DOM:123 Cliff Ave.;Big Town;CA;97531");
125 VDATA_TEST_TRACE("%s\n", buffer);
126 tree = VCardDecode(buffer);
127 VDATA_TEST_TRACE("call executed \n");
131 VDATA_TEST_TRACE ("treetype is %d \n", tree->treeType);
137 /*decode a raw buffer having invalid version tag to a tree*/
138 void utc_vdata_vcard_decode_4()
140 gchar *buffer = NULL;
143 buffer = g_strdup("BEGIN:VCARD\r\nVE:2.1\r\nN:Martin;Stephen\r\nTEL;HOME;VOICE:+1 (210) 555-1357\r\nTEL;HOME;FAX:+1 (210) 555-0864\r\nADR;WORK;PARCEL;POSTAL;DOM:123 Cliff Ave.;Big Town;CA;97531\r\nEND:VCARD");
145 tree = VCardDecode(buffer);
147 VDATA_TEST_TRACE ("call executed \n");
148 VDATA_TEST_TRACE ("treetype is %d \n", tree->treeType);
151 VDATA_TEST_TRACE ("tree->pTop null. \n");
155 VDATA_TEST_TRACE ("top property is %d \n", tree->pTop->property);
156 VDATA_TEST_TRACE ("top property value is %s \n", *(tree->pTop->pszValue));
158 MT_CHECK_EQUAL(tree->pTop->property, (int)VCARD_TYPE_N);
165 /** decode a raw buffer without having crlf in between two tokens to a tree */
166 void utc_vdata_vcard_decode_5()
168 gchar *buffer = NULL;
171 buffer = g_strdup("BEGIN:VCARDVERSION:2.1\r\nN:Martin;Stephen\r\nTEL;HOME;VOICE:+1 (210) 555-1357\r\nTEL;HOME;FAX:+1 (210) 555-0864\r\nADR;WORK;PARCEL;POSTAL;DOM:123 Cliff Ave.;Big Town;CA;97531\r\nEND:VCARD");
173 tree = VCardDecode(buffer);
174 VDATA_TEST_TRACE ("call executed \n");
175 VDATA_TEST_TRACE ("treetype is %d \n", tree->treeType);
178 VDATA_TEST_TRACE ("tree->pTop null. \n");
182 VDATA_TEST_TRACE ("top property is %d \n", tree->pTop->property);
183 VDATA_TEST_TRACE ("top property value is %s \n", *(tree->pTop->pszValue));
185 MT_CHECK_EQUAL(tree->pTop->property, (int)VCARD_TYPE_N);
191 /*decode a raw buffer having some invalid token to a tree*/
192 void utc_vdata_vcard_decode_6()
194 gchar *buffer = NULL;
197 buffer = g_strdup("BEGIN:VCARD\r\nVERSIOOOONNNN:2.1\r\nN:Martin;Stephen\r\nTEL;HOME;VOICE:+1 (210) 555-1357\r\nTEL;HOME;FAX:+1 (210) 555-0864\r\nADR;WORK;PARCEL;POSTAL;DOM:123 Cliff Ave.;Big Town;CA;97531\r\nEND:VCARD");
199 tree = VCardDecode(buffer);
200 VDATA_TEST_TRACE ("call executed \n");
201 VDATA_TEST_TRACE ("treetype is %d \n", tree->treeType);
204 VDATA_TEST_TRACE ("tree->pTop null. \n");
208 VDATA_TEST_TRACE ("top property is %d \n", tree->pTop->property);
209 VDATA_TEST_TRACE ("top property value is %s \n", *(tree->pTop->pszValue));
211 MT_CHECK_EQUAL(tree->pTop->property, (int)VCARD_TYPE_N);
217 /*decode a NULL raw buffer to a tree*/
218 void utc_vdata_vcard_decode_7()
220 gchar *buffer = NULL;
223 tree = VCardDecode(buffer);
224 VDATA_TEST_TRACE ("call executed \n");
226 MT_CHECK_EQUAL((VTree*)NULL, tree);