91 QList<int> events; |
91 QList<int> events; |
92 bool async( false ); |
92 bool async( false ); |
93 QVERIFY( mLogsRemove->clearEvents(events, async) == 0 ); |
93 QVERIFY( mLogsRemove->clearEvents(events, async) == 0 ); |
94 QVERIFY( !async ); |
94 QVERIFY( !async ); |
95 QVERIFY( mLogsRemove->mRemovedEvents.count() == 0 ); |
95 QVERIFY( mLogsRemove->mRemovedEvents.count() == 0 ); |
|
96 QVERIFY( !mLogsRemove->IsActive() ); |
96 |
97 |
97 // Clearing with recent view (ids) |
98 // Clearing with recent view (ids) |
98 events.append(2); |
99 events.append(2); |
99 events.append(100); |
100 events.append(100); |
100 QVERIFY( mLogsRemove->clearEvents(events, async) == 0 ); |
101 QVERIFY( mLogsRemove->clearEvents(events, async) == 0 ); |
101 QVERIFY( !async ); |
102 QVERIFY( async ); |
102 QVERIFY( mLogsRemove->mRemovedEvents.count() == 0 ); |
103 QVERIFY( mLogsRemove->mRemovedEvents.count() == 2 ); |
|
104 QVERIFY( mLogsRemove->IsActive() ); |
103 |
105 |
104 // Clearing with all events (no ids) |
106 // Clearing with all events (no ids) |
105 events.clear(); |
107 events.clear(); |
106 LogsRemove removeWithAllEvents(*this, true); |
108 LogsRemove removeWithAllEvents(*this, true); |
107 QVERIFY( removeWithAllEvents.clearEvents(events, async) == 0 ); |
109 QVERIFY( removeWithAllEvents.clearEvents(events, async) == 0 ); |
108 QVERIFY( !async ); |
110 QVERIFY( !async ); |
109 QVERIFY( removeWithAllEvents.mRemovedEvents.count() == 0 ); |
111 QVERIFY( removeWithAllEvents.mRemovedEvents.count() == 0 ); |
|
112 QVERIFY( !removeWithAllEvents.IsActive() ); |
110 |
113 |
111 // Clearing with all events (ids) |
114 // Clearing with all events (ids) |
112 events.append(99); |
115 events.append(99); |
113 events.append(100); |
116 events.append(100); |
114 QVERIFY( removeWithAllEvents.clearEvents(events, async) == 0 ); |
117 QVERIFY( removeWithAllEvents.clearEvents(events, async) == 0 ); |
115 QVERIFY( async ); |
118 QVERIFY( async ); |
116 QVERIFY( removeWithAllEvents.mRemovedEvents.count() == 1 ); |
119 QVERIFY( removeWithAllEvents.mRemovedEvents.count() == 2 ); |
117 QVERIFY( removeWithAllEvents.mRemovedEvents.at(0) == 100 ); |
120 QVERIFY( removeWithAllEvents.mRemovedEvents.at(0) == 99 ); |
|
121 QVERIFY( removeWithAllEvents.mRemovedEvents.at(1) == 100 ); |
|
122 QVERIFY( removeWithAllEvents.IsActive() ); |
118 |
123 |
119 } |
124 // Clearing not allowed while previous is active |
120 |
125 events.append(200); |
121 void UT_LogsRemove::testDoCancel() |
126 QVERIFY( removeWithAllEvents.clearEvents(events, async) != 0 ); |
122 { |
127 QVERIFY( mLogsRemove->mRemovedEvents.count() == 2 ); |
123 mLogsRemove->DoCancel(); |
128 QVERIFY( !async ); |
124 } |
129 QVERIFY( removeWithAllEvents.IsActive() ); |
125 |
|
126 void UT_LogsRemove::testRunL() |
|
127 { |
|
128 // Test ok scenario |
|
129 mLogsRemove->init(); |
|
130 mLogsRemove->Cancel(); |
|
131 mLogsRemove->iStatus = KErrNone; |
|
132 mLogsRemove->RunL(); |
|
133 QVERIFY( mRemoveCompleted ); |
|
134 |
|
135 // Ok scenario when more events to delete |
|
136 mRemoveCompleted = false; |
|
137 mLogsRemove->mRemovedEvents.append(2); |
|
138 mLogsRemove->mRemovedEvents.append(4); |
|
139 mLogsRemove->Cancel(); |
|
140 mLogsRemove->RunL(); |
|
141 QVERIFY( !mRemoveCompleted ); |
|
142 QVERIFY( mLogsRemove->mRemovedEvents.count() == 1 ); |
|
143 |
|
144 mLogsRemove->Cancel(); |
|
145 mLogsRemove->RunL(); |
|
146 QVERIFY( !mRemoveCompleted ); |
|
147 QVERIFY( mLogsRemove->mRemovedEvents.count() == 0 ); |
|
148 |
|
149 // Ok scenario when no more events to delete |
|
150 mLogsRemove->Cancel(); |
|
151 mLogsRemove->RunL(); |
|
152 QVERIFY( mRemoveCompleted ); |
|
153 QVERIFY( mLogsRemove->mRemovedEvents.count() == 0 ); |
|
154 |
|
155 // Test failure |
|
156 mLogsRemove->Cancel(); |
|
157 mLogsRemove->iStatus = KErrNotFound; |
|
158 TRAPD( err, mLogsRemove->RunL() ); |
|
159 QVERIFY( err == KErrNotFound ); |
|
160 } |
130 } |
161 |
131 |
162 void UT_LogsRemove::testRunError() |
132 void UT_LogsRemove::testRunError() |
163 { |
133 { |
164 // No fatal callback for access denied error |
134 // No fatal callback for access denied error |
175 LogClientStubsHelper::setLeaveWithError(KErrNone); |
145 LogClientStubsHelper::setLeaveWithError(KErrNone); |
176 |
146 |
177 //initializing for the first time |
147 //initializing for the first time |
178 QVERIFY( mLogsRemove->init() == KErrNone ); |
148 QVERIFY( mLogsRemove->init() == KErrNone ); |
179 QVERIFY( mLogsRemove->mLogClient ); |
149 QVERIFY( mLogsRemove->mLogClient ); |
|
150 QVERIFY( mLogsRemove->mFsSession ); |
180 CLogClient* oldClient = mLogsRemove->mLogClient; |
151 CLogClient* oldClient = mLogsRemove->mLogClient; |
181 |
152 |
182 //2d time should be also ok |
153 //2d time should be also ok |
183 QVERIFY( mLogsRemove->init() == KErrNone ); |
154 QVERIFY( mLogsRemove->init() == KErrNone ); |
184 QVERIFY( mLogsRemove->mLogClient ); |
155 QVERIFY( mLogsRemove->mLogClient ); |
|
156 QVERIFY( mLogsRemove->mFsSession ); |
185 QVERIFY( oldClient == mLogsRemove->mLogClient ); |
157 QVERIFY( oldClient == mLogsRemove->mLogClient ); |
186 } |
158 } |
187 |
159 |