Mercurial > hg > Members > kono > Cerium
annotate TaskManager/test/MailManagerTest.cc @ 805:daab9cd6f91f
merge
author | yutaka@localhost.localdomain |
---|---|
date | Fri, 21 May 2010 18:31:31 +0900 |
parents | 55f898a58748 |
children |
rev | line source |
---|---|
648
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1 #include <stdio.h> |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2 #include "TaskManager/MailManager.h" |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
3 |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
4 static void |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
5 fail(const char *reason) |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
6 { |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
7 printf("MailManagerTest failed %s", reason); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
8 } |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
9 |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
10 static void |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
11 tester(MailManagerPtr m, int size) |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
12 { |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
13 |
649 | 14 for(int i=0;i<size;i++) { |
648
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
15 m->send((memaddr)i); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
16 } |
649 | 17 for(int i=0;i<size;i++) { |
648
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
18 if (m->count()==0) { |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
19 fail("early read fail\n"); break; |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
20 } |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
21 if (m->recv()!=(memaddr)i) { |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
22 fail("read data fail\n"); break; |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
23 } |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
24 } |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
25 } |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
26 |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
27 static void |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
28 test1() { |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
29 MailManagerPtr m = new MailManager(); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
30 tester(m,16); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
31 tester(m,32); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
32 tester(m,48); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
33 delete m; |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
34 MailManagerPtr m1 = new MailManager(40); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
35 tester(m1,16); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
36 tester(m1,48); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
37 delete m1; |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
38 } |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
39 |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
40 int |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
41 main(int ac, const char *av[]) |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
42 { |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
43 test1(); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
44 printf("MailManagerTest succeed\n"); |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
45 } |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
46 |
f1e10ba45d28
Mail modification. Working on Mac OS X.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
47 /* end */ |