1 |
#include "Message.hpp"
|
2 |
#include <iostream>
|
3 |
|
4 |
using namespace std;
|
5 |
|
6 |
int test1() {
|
7 |
Message m;
|
8 |
m.setName("Myname");
|
9 |
Element* e1 = new Element("k1","v1","t1");
|
10 |
Element* e2 = new Element("k2","v2","t2");
|
11 |
m.addElement(e1);
|
12 |
m.addElement(e2);
|
13 |
Message m2;
|
14 |
Element* e4 = new Element("k4","v4","t4");
|
15 |
Element* e5 = new Element("k5","v5","t5");
|
16 |
Element* e6 = new Element("k6","v6","t6");
|
17 |
m2.addElement(e4);
|
18 |
m2.addElement(e5);
|
19 |
m2.addElement(e6);
|
20 |
m.appendToVec(m2,"abc");
|
21 |
m.appendToVec(m2,"abc");
|
22 |
cout<<"serliized message is "<<endl;
|
23 |
string x;
|
24 |
m.serialize(x);
|
25 |
cout<<x<<endl;
|
26 |
return 1;
|
27 |
}
|
28 |
|
29 |
|
30 |
int test2() {
|
31 |
typedef std::vector<Element*> Data;
|
32 |
typedef Data::iterator DataIter;
|
33 |
typedef std::vector<Data*> VecData;
|
34 |
typedef VecData::iterator VecDataIter;
|
35 |
VecData* vd1 = new VecData();
|
36 |
VecData* vd2 = new VecData();
|
37 |
|
38 |
Message m;
|
39 |
m.setName("Myname");
|
40 |
Element* e1 = new Element("k1","v1","t1");
|
41 |
Element* e2 = new Element("k2","v2","t2");
|
42 |
m.addElement(e1);
|
43 |
m.addElement(e2);
|
44 |
|
45 |
Data* d1 = new Data();
|
46 |
Element* e4 = new Element("k4","v4","t4");
|
47 |
Element* e5 = new Element("k5","v5","t5");
|
48 |
d1->push_back(e4);
|
49 |
d1->push_back(e5);
|
50 |
|
51 |
Data* d2 = new Data();
|
52 |
Element* e6 = new Element("k6","v6","t6");
|
53 |
Element* e7 = new Element("k7","v7","t7");
|
54 |
d2->push_back(e6);
|
55 |
d2->push_back(e7);
|
56 |
|
57 |
|
58 |
|
59 |
Data* d3 = new Data();
|
60 |
Element* e8 = new Element("k8","v8","t8");
|
61 |
Element* e9 = new Element("k9","v9","t9");
|
62 |
d3->push_back(e8);
|
63 |
d3->push_back(e9);
|
64 |
|
65 |
Data* d4 = new Data();
|
66 |
Element* e10 = new Element("k10","v10","t10");
|
67 |
Element* e11 = new Element("k11","v11","t11");
|
68 |
d4->push_back(e10);
|
69 |
d4->push_back(e11);
|
70 |
|
71 |
vd1->push_back(d1);
|
72 |
vd1->push_back(d2);
|
73 |
vd2->push_back(d3);
|
74 |
vd2->push_back(d4);
|
75 |
|
76 |
m.addVecOfVecOfElement(vd1,"VD1");
|
77 |
m.addVecOfVecOfElement(vd2,"VD2");
|
78 |
|
79 |
string message;
|
80 |
m.serialize(message);
|
81 |
cout<<"Serialized MESSAGE is \n"<<message<<endl;
|
82 |
return 1;
|
83 |
|
84 |
}
|
85 |
|
86 |
|
87 |
int test3() {
|
88 |
Message m;
|
89 |
string temp = "MESSAGE_BEGIN;NAME=Myname;EXCEPTION_OCCURED=FALSE;EXCEPTION=;DATA_BEGIN;KEY=k1:VALUE=v1:TYPE=t1;KEY=k2:VALUE=v2:TYPE=t2;KEY=VD1:VALUE=BEGIN:TYPE=VECOFVEC;KEY=NULL:VALUE=BEGIN:TYPE=VECOFDATA;KEY=k4:VALUE=v4:TYPE=t4;KEY=k5:VALUE=v5:TYPE=t5;KEY=NULL:VALUE=END:TYPE=VECOFDATA;KEY=NULL:VALUE=BEGIN:TYPE=VECOFDATA;KEY=k6:VALUE=v6:TYPE=t6;KEY=k7:VALUE=v7:TYPE=t7;KEY=NULL:VALUE=END:TYPE=VECOFDATA;KEY=VD1:VALUE=END:TYPE=VECOFVEC;KEY=VD2:VALUE=BEGIN:TYPE=VECOFVEC;KEY=NULL:VALUE=BEGIN:TYPE=VECOFDATA;KEY=k8:VALUE=v8:TYPE=t8;KEY=k9:VALUE=v9:TYPE=t9;KEY=NULL:VALUE=END:TYPE=VECOFDATA;KEY=NULL:VALUE=BEGIN:TYPE=VECOFDATA;KEY=k10:VALUE=v10:TYPE=t10;KEY=k11:VALUE=v11:TYPE=t11;KEY=NULL:VALUE=END:TYPE=VECOFDATA;KEY=VD2:VALUE=END:TYPE=VECOFVEC;DATA_END;MESSAGE_END";
|
90 |
cout<<"Deserialing"<<endl;
|
91 |
cout<<"deserialize returned "<<m.deserialize(temp)<<endl;
|
92 |
Element* e3 = new Element("k3","v3","t3");
|
93 |
m.addElement(e3);
|
94 |
string message;
|
95 |
m.serialize(message);
|
96 |
cout<<"Again Serialized MESSAGE is \n"<<message<<endl;
|
97 |
return 1;
|
98 |
|
99 |
}
|
100 |
int test4() {
|
101 |
Message* m = new Message();
|
102 |
m->setName("Myname");
|
103 |
Element* e1 = new Element("k1","v1","t1");
|
104 |
Element* e2 = new Element("k2","v2","t2");
|
105 |
m->addElement(e1);
|
106 |
m->addElement(e2);
|
107 |
|
108 |
Message* m2 = new Message();
|
109 |
Element* e4 = new Element("k4","v4","t4");
|
110 |
Element* e5 = new Element("k5","v5","t5");
|
111 |
Element* e6 = new Element("k6","v6","t6");
|
112 |
m2->addElement(e4);
|
113 |
m2->addElement(e5);
|
114 |
m2->addElement(e6);
|
115 |
|
116 |
Message* m1 = new Message();
|
117 |
Element* e7 = new Element("k7","v7","t7");
|
118 |
Element* e8 = new Element("k8","v8","t8");
|
119 |
Element* e9 = new Element("k9","v9","t9");
|
120 |
m1->addElement(e7);
|
121 |
m1->addElement(e8);
|
122 |
m1->addElement(e9);
|
123 |
|
124 |
// m.appendToVec(m2,"abc");
|
125 |
// m.appendToVec(m2,"abc");
|
126 |
|
127 |
Message m3;
|
128 |
m3.addMsg(m);
|
129 |
m3.addMsg(m2);
|
130 |
m3.addMsg(m1);
|
131 |
|
132 |
cout<<"serliized message is "<<endl;
|
133 |
string x;
|
134 |
m3.serialize(x);
|
135 |
cout<<x<<endl;
|
136 |
return 1;
|
137 |
}
|
138 |
|
139 |
|
140 |
int test5() {
|
141 |
Message m;
|
142 |
string temp ="MESSAGE_BEGIN;NAME=Myname;EXCEPTION_OCCURED=FALSE;EXCEPTION=;DATA_BEGIN;KEY=k1:VALUE=v1:TYPE=t1;KEY=k2:VALUE=v2:TYPE=t2;DATA_END;MESSAGE_ENDMESSAGE_BEGIN;NAME=;EXCEPTION_OCCURED=FALSE;EXCEPTION=;DATA_BEGIN;KEY=k4:VALUE=v4:TYPE=t4;KEY=k5:VALUE=v5:TYPE=t5;KEY=k6:VALUE=v6:TYPE=t6;DATA_END;MESSAGE_ENDMESSAGE_BEGIN;NAME=;EXCEPTION_OCCURED=FALSE;EXCEPTION=;DATA_BEGIN;KEY=k7:VALUE=v7:TYPE=t7;KEY=k8:VALUE=v8:TYPE=t8;KEY=k9:VALUE=v9:TYPE=t9;DATA_END;MESSAGE_END";
|
143 |
cout<<"Deserialing"<<endl;
|
144 |
cout<<"deserialize returned "<<m.deserialize(temp)<<endl;
|
145 |
string message;
|
146 |
m.serialize(message);
|
147 |
cout<<"Again Serialized MESSAGE is \n"<<message<<endl;
|
148 |
return 1;
|
149 |
|
150 |
}
|
151 |
|
152 |
int main() {
|
153 |
//test1();
|
154 |
//test2();
|
155 |
//test3();
|
156 |
test4();
|
157 |
test5();
|
158 |
}
|