1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>LCOV - lcov.info - ept/core/desktop.test.h</title>
<link rel="stylesheet" type="text/css" href="../../gcov.css">
</head>
<body>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="title">LTP GCOV extension - code coverage report</td></tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr>
<td width="100%">
<table cellpadding=1 border=0 width="100%">
<tr>
<td class="headerItem" width="20%">Current view:</td>
<td class="headerValue" width="80%" colspan=4><a href="../../index.html">directory</a> - <a href="index.html">ept/core</a> - desktop.test.h</td>
</tr>
<tr>
<td class="headerItem" width="20%">Test:</td>
<td class="headerValue" width="80%" colspan=4>lcov.info</td>
</tr>
<tr>
<td class="headerItem" width="20%">Date:</td>
<td class="headerValue" width="20%">2008-08-14</td>
<td width="20%"></td>
<td class="headerItem" width="20%">Instrumented lines:</td>
<td class="headerValue" width="20%">33</td>
</tr>
<tr>
<td class="headerItem" width="20%">Code covered:</td>
<td class="headerValue" width="20%">100.0 %</td>
<td width="20%"></td>
<td class="headerItem" width="20%">Executed lines:</td>
<td class="headerValue" width="20%">33</td>
</tr>
</table>
</td>
</tr>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
</table>
<table cellpadding=0 cellspacing=0 border=0>
<tr>
<td><br></td>
</tr>
<tr>
<td><pre class="source">
<span class="lineNum"> 1 </span> : // -*- C++ -*-
<span class="lineNum"> 2 </span> : #include <ept/config.h>
<span class="lineNum"> 3 </span> : #include <ept/core/desktop.h>
<span class="lineNum"> 4 </span> : #include <ept/core/list.h>
<span class="lineNum"> 5 </span> : #include <ept/test.h>
<span class="lineNum"> 6 </span> :
<span class="lineNum"> 7 </span> : using namespace ept::core;
<span class="lineNum"> 8 </span> :
<span class="lineNum"> 9 </span><span class="lineCov"> 5 : struct TestDesktop {</span>
<span class="lineNum"> 10 </span> : desktop::Source desk;
<span class="lineNum"> 11 </span> : ept::Token t;
<span class="lineNum"> 12 </span> :
<span class="lineNum"> 13 </span><span class="lineCov"> 5 : TestDesktop() : desk( TEST_ENV_DIR "desktop" ) {}</span>
<span class="lineNum"> 14 </span> :
<span class="lineNum"> 15 </span> : template< desktop::PropertyId P, typename L >
<span class="lineNum"> 16 </span><span class="lineCov"> 3 : void checkIteration2( int c, const char **check, L l ) {</span>
<span class="lineNum"> 17 </span><span class="lineCov"> 3 : int i = 0;</span>
<span class="lineNum"> 18 </span><span class="lineCov"> 16 : while ( !l.empty() ) {</span>
<span class="lineNum"> 19 </span><span class="lineCov"> 10 : assert_eq( l.head().template get< P >(), check[ i ] );</span>
<span class="lineNum"> 20 </span><span class="lineCov"> 20 : l = l.tail();</span>
<span class="lineNum"> 21 </span><span class="lineCov"> 10 : ++ i;</span>
<span class="lineNum"> 22 </span> : }
<span class="lineNum"> 23 </span><span class="lineCov"> 3 : assert_eq( i, c );</span>
<span class="lineNum"> 24 </span><span class="lineCov"> 3 : }</span>
<span class="lineNum"> 25 </span> :
<span class="lineNum"> 26 </span> : template< desktop::PropertyId P, typename L >
<span class="lineNum"> 27 </span><span class="lineCov"> 3 : void checkIteration( int c, const char **check, L l ) {</span>
<span class="lineNum"> 28 </span><span class="lineCov"> 3 : checkIteration2< P >( c, check, list::sort( l ) );</span>
<span class="lineNum"> 29 </span><span class="lineCov"> 3 : }</span>
<span class="lineNum"> 30 </span> :
<span class="lineNum"> 31 </span><span class="lineCov"> 1 : Test iteration() {</span>
<span class="lineNum"> 32 </span><span class="lineCov"> 1 : const char *check[] = { "Kdict", "foo", "XQF", "X-Server" };</span>
<span class="lineNum"> 33 </span> : checkIteration< desktop::Name >(
<span class="lineNum"> 34 </span><span class="lineCov"> 1 : 4, check, desk.list< desktop::Name >() );</span>
<span class="lineNum"> 35 </span><span class="lineCov"> 1 : }</span>
<span class="lineNum"> 36 </span> :
<span class="lineNum"> 37 </span><span class="lineCov"> 1 : Test groupProperty() {</span>
<span class="lineNum"> 38 </span> : const char *check[] = {
<span class="lineNum"> 39 </span> : "{ KDE, Qt, Utility }",
<span class="lineNum"> 40 </span> : "{ KDE, Qt, Utility }",
<span class="lineNum"> 41 </span> : "{ Application, Game, X-SuSE-Core-Game }",
<span class="lineNum"> 42 </span> : "{ KDE, Qt, X-KDE-information }",
<span class="lineNum"> 43 </span><span class="lineCov"> 1 : };</span>
<span class="lineNum"> 44 </span> : checkIteration< desktop::Group >(
<span class="lineNum"> 45 </span><span class="lineCov"> 1 : 4, check, desk.list< desktop::Name >() );</span>
<span class="lineNum"> 46 </span><span class="lineCov"> 1 : }</span>
<span class="lineNum"> 47 </span> :
<span class="lineNum"> 48 </span><span class="lineCov"> 1 : Test groups() {</span>
<span class="lineNum"> 49 </span><span class="lineCov"> 1 : const char *check[] = { "Kdict", "foo" };</span>
<span class="lineNum"> 50 </span> : checkIteration< desktop::Name >(
<span class="lineNum"> 51 </span><span class="lineCov"> 1 : 2, check, desk.group( "{ KDE, Qt, Utility }" ) );</span>
<span class="lineNum"> 52 </span><span class="lineCov"> 1 : }</span>
<span class="lineNum"> 53 </span> :
<span class="lineNum"> 54 </span><span class="lineCov"> 1 : Test groupList() {</span>
<span class="lineNum"> 55 </span> : std::string check[] = {
<span class="lineNum"> 56 </span> : "{ Application, Game, X-SuSE-Core-Game }",
<span class="lineNum"> 57 </span> : "{ KDE, Qt, Utility }",
<span class="lineNum"> 58 </span> : "{ KDE, Qt, X-KDE-information }",
<span class="lineNum"> 59 </span><span class="lineCov"> 1 : };</span>
<span class="lineNum"> 60 </span> :
<span class="lineNum"> 61 </span><span class="lineCov"> 2 : assert_list_eq( desk.groupList(), check );</span>
<span class="lineNum"> 62 </span><span class="lineCov"> 1 : }</span>
<span class="lineNum"> 63 </span> :
<span class="lineNum"> 64 </span><span class="lineCov"> 1 : Test emptyGroupList() {</span>
<span class="lineNum"> 65 </span><span class="lineCov"> 1 : desktop::InternalList l;</span>
<span class="lineNum"> 66 </span><span class="lineCov"> 1 : assert( l.empty() );</span>
<span class="lineNum"> 67 </span><span class="lineCov"> 1 : }</span>
<span class="lineNum"> 68 </span> : };
</pre>
</td>
</tr>
</table>
<br>
<table width="100%" border=0 cellspacing=0 cellpadding=0>
<tr><td class="ruler"><img src="../../glass.png" width=3 height=3 alt=""></td></tr>
<tr><td class="versionInfo">Generated by: <a href="http://ltp.sourceforge.net/coverage/lcov.php" target="_parent">LTP GCOV extension version 1.6</a></td></tr>
</table>
<br>
</body>
</html>
|