1 /***************************************************************************
2 * test_serialize.c - serializing test suite
4 * begin : Mon 26 Nov 2007
5 * copyright : (C) 2007 by Markus Raab
6 * email : elektra@markus-raab.org
7 ****************************************************************************/
9 /***************************************************************************
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the BSD License (revised). *
14 ***************************************************************************/
32 void output_serialize (void* data, size_t length)
35 for (i=0; i<length; i++)
37 printf ("%o %c ", ((char*)data)[i], ((char*)data)[i]);
44 char buffer[MAX_SIZE+1];
48 printf("Test empty key\n");
51 // printf ("%d\n", keyGetSerializedSize(key));
52 // succeed_if( keyGetSerializedSize(key) == 68, "empty key size wrong (32bit)");
53 keySerialize (key, buffer, MAX_SIZE);
54 // output_serialize (buffer, keyGetSerializedSize (key));
55 get = keyUnserialize (buffer);
58 succeed_if (!compare_key (key,get,0), "did not get the same key after serializing");
63 // succeed_if( keyGetSerializedSize(key) == 68, "empty key size wrong (32bit)");
64 keySerialize (key, buffer, MAX_SIZE);
65 get = keyCompose (buffer);
68 succeed_if (!compare_key (key,get,0), "did not get the same key after serializing");
74 char buffer[MAX_SIZE+1];
78 printf("Test key with value/comment\n");
82 KEY_COMMENT, "comment",
84 // printf ("%d\n", keyGetSerializedSize(key));
85 // succeed_if( keyGetSerializedSize(key) == 94, "empty key size wrong (32bit)");
86 keySerialize (key, buffer, MAX_SIZE);
87 // output_serialize (buffer, keyGetSerializedSize (key));
88 get = keyUnserialize (buffer);
91 succeed_if (!compare_key (key,get,0), "did not get the same key after serializing");
97 KEY_COMMENT, "comment",
99 // succeed_if( keyGetSerializedSize(key) == 94, "empty key size wrong (32bit)");
100 keySerialize (key, buffer, MAX_SIZE);
101 get = keyCompose (buffer);
103 // keyGenerate (get);
104 succeed_if (!compare_key (key,get,0), "did not get the same key after serializing");
108 void test_xml(char *file)
110 char buffer[MAX_SIZE+1];
114 KeySet *ks = ksNew (0);
116 exit_if_fail( ksFromXMLfile(ks, file) == 0, "ksFromXMLfile failed.");
118 printf("Test key from xml file %s\n", file);
122 while ( (cur = ksNext(ks)) )
125 keySerialize (key, buffer, MAX_SIZE);
126 // output_serialize (buffer, keyGetSerializedSize (key));
127 get = keyUnserialize (buffer);
129 // keyGenerate (get);
130 succeed_if (!compare_key (key,get,0), "did not get the same key after serializing");
135 keySerialize (key, buffer, MAX_SIZE);
136 get = keyCompose (buffer);
138 // keyGenerate (get);
139 succeed_if (!compare_key (key,get,0), "did not get the same key after serializing");
147 printf("SERIALIZE TESTS\n");
148 printf("==================\n\n");
154 test_xml(srcdir_file("key.xml"));
155 test_xml(srcdir_file("keyset.xml"));
156 printf("\ntest_serialize RESULTS: %d test(s) done. %d error(s).\n", nbTest, nbError);