1756 TEST(KErrArgument == status.Int()); |
1756 TEST(KErrArgument == status.Int()); |
1757 |
1757 |
1758 session.Close(); |
1758 session.Close(); |
1759 } |
1759 } |
1760 |
1760 |
|
1761 |
|
1762 /** |
|
1763 @SYMTestCaseID GRAPHICS-SURFACEUPDATE-0019 |
|
1764 |
|
1765 |
|
1766 @SYMPREQ 1007 |
|
1767 |
|
1768 @SYMREQ 8223 |
|
1769 |
|
1770 @SYMTestCaseDesc Starting the surface update server in two different threads. |
|
1771 |
|
1772 @SYMTestPriority High |
|
1773 |
|
1774 @SYMTestStatus Implemented |
|
1775 |
|
1776 @SYMTestActions Start the surface update server in two different threads. |
|
1777 |
|
1778 @SYMTestExpectedResults Thread 1: KErrNone |
|
1779 Thread 2: KErrNone |
|
1780 The "provider" returned to both threads should also be the same value! |
|
1781 */ |
|
1782 void CTSurfaceUpdate::TestCase12L() |
|
1783 { |
|
1784 MSurfaceUpdateServerProvider *surfaceUpdateProvider = NULL; |
|
1785 TInt res = StartSurfaceUpdateServer(surfaceUpdateProvider); |
|
1786 TEST(res == KErrNone); |
|
1787 User::LeaveIfError(res); |
|
1788 |
|
1789 _LIT(KThreadName, "TestServerStartupTwoThreads"); |
|
1790 TTime tm; |
|
1791 TBuf<32> buf; |
|
1792 tm.UniversalTime(); |
|
1793 TRAP(res, tm.FormatL(buf, _L("_%H%T%S%C"))); |
|
1794 TEST(res == KErrNone); |
|
1795 User::LeaveIfError(res); |
|
1796 TBuf<128> threadName(KThreadName); |
|
1797 threadName.Append(buf); //guarantee uniqueness of the thread name |
|
1798 RThread thread; |
|
1799 MSurfaceUpdateServerProvider *surfaceUpdateProvider2 = NULL; |
|
1800 res = thread.Create(threadName, |
|
1801 TestServerStartupTwoThreads, |
|
1802 KDefaultStackSize, |
|
1803 &User::Heap(), |
|
1804 &surfaceUpdateProvider2); |
|
1805 TEST(res == KErrNone); |
|
1806 User::LeaveIfError(res); |
|
1807 TRequestStatus rendezvousStatus; |
|
1808 thread.Rendezvous(rendezvousStatus); |
|
1809 thread.Resume(); |
|
1810 User::WaitForRequest(rendezvousStatus); |
|
1811 TEST(KErrNone == rendezvousStatus.Int()); |
|
1812 // Check that we get the same provider for both threads! |
|
1813 TEST(surfaceUpdateProvider2 == surfaceUpdateProvider); |
|
1814 } |
|
1815 |
|
1816 |
1761 /** |
1817 /** |
1762 Starting the update server in another thread - called from TestCase12 |
1818 Starting the update server in another thread - called from TestCase12 |
1763 */ |
1819 */ |
1764 TInt CTSurfaceUpdate::TestServerStartupTwoThreads(TAny*) |
1820 TInt CTSurfaceUpdate::TestServerStartupTwoThreads(TAny *aArgPtr) |
1765 { |
1821 { |
1766 MSurfaceUpdateServerProvider *surfaceUpdateProvider = NULL; |
1822 MSurfaceUpdateServerProvider **surfaceUpdateProviderPtr = |
1767 TInt res = StartSurfaceUpdateServer(surfaceUpdateProvider); |
1823 reinterpret_cast<MSurfaceUpdateServerProvider **>(aArgPtr); |
|
1824 TInt res = StartSurfaceUpdateServer(*surfaceUpdateProviderPtr); |
1768 return res; |
1825 return res; |
1769 } |
1826 } |
1770 |
1827 |
1771 /** |
1828 /** |
1772 @SYMTestCaseID GRAPHICS-SURFACEUPDATE-0020 |
1829 @SYMTestCaseID GRAPHICS-SURFACEUPDATE-0020 |
2198 INFO_PRINTF1(_L("TestCase11")); |
2255 INFO_PRINTF1(_L("TestCase11")); |
2199 TRAPD(ret, TestCase11()); |
2256 TRAPD(ret, TestCase11()); |
2200 TEST(ret == KErrNone); |
2257 TEST(ret == KErrNone); |
2201 break; |
2258 break; |
2202 } |
2259 } |
2203 case 12: |
2260 case 12: |
|
2261 { |
|
2262 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0019")); |
|
2263 INFO_PRINTF1(_L("TestCase12L")); |
|
2264 TRAPD(ret, TestCase12L()); |
|
2265 TEST(ret == KErrNone); |
|
2266 break; |
|
2267 } |
|
2268 case 13: |
2204 { |
2269 { |
2205 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0020")); |
2270 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0020")); |
2206 INFO_PRINTF1(_L("TestCase13L")); |
2271 INFO_PRINTF1(_L("TestCase13L")); |
2207 TRAPD(ret, TestCase13L()); |
2272 TRAPD(ret, TestCase13L()); |
2208 TEST(ret == KErrNone); |
2273 TEST(ret == KErrNone); |
2209 break; |
2274 break; |
2210 } |
2275 } |
2211 case 13: |
2276 case 14: |
2212 { |
2277 { |
2213 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0022")); |
2278 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0022")); |
2214 INFO_PRINTF1(_L("TestCase14")); |
2279 INFO_PRINTF1(_L("TestCase14")); |
2215 TestCase14(); |
2280 TestCase14(); |
2216 break; |
2281 break; |
2217 } |
2282 } |
2218 case 14: |
2283 case 15: |
2219 { |
2284 { |
2220 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0023")); |
2285 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0023")); |
2221 INFO_PRINTF1(_L("TestCase15")); |
2286 INFO_PRINTF1(_L("TestCase15")); |
2222 TRAPD(ret, TestCase15()); |
2287 TRAPD(ret, TestCase15()); |
2223 TEST(ret == KErrNone); |
2288 TEST(ret == KErrNone); |
2224 break; |
2289 break; |
2225 } |
2290 } |
2226 case 15: |
2291 case 16: |
2227 { |
2292 { |
2228 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0024")); |
2293 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0024")); |
2229 INFO_PRINTF1(_L("TestCase16")); |
2294 INFO_PRINTF1(_L("TestCase16")); |
2230 TRAPD(ret, TestCase16L()); |
2295 TRAPD(ret, TestCase16L()); |
2231 TEST(ret == KErrNone); |
2296 TEST(ret == KErrNone); |
2232 break; |
2297 break; |
2233 } |
2298 } |
2234 case 16: |
2299 case 17: |
2235 { |
2300 { |
2236 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0028")); |
2301 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0028")); |
2237 INFO_PRINTF1(_L("TestCase17")); |
2302 INFO_PRINTF1(_L("TestCase17")); |
2238 TRAPD(ret, TestCase17()); |
2303 TRAPD(ret, TestCase17()); |
2239 TEST(ret == KErrNone); |
2304 TEST(ret == KErrNone); |
2240 break; |
2305 break; |
2241 } |
2306 } |
2242 case 17: |
2307 case 18: |
2243 { |
2308 { |
2244 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0025")); |
2309 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0025")); |
2245 INFO_PRINTF1(_L("TestCase18")); |
2310 INFO_PRINTF1(_L("TestCase18")); |
2246 TRAPD(ret, TestCase18()); |
2311 TRAPD(ret, TestCase18()); |
2247 TEST(ret == KErrNone); |
2312 TEST(ret == KErrNone); |
2248 break; |
2313 break; |
2249 } |
2314 } |
2250 case 18: |
2315 case 19: |
2251 { |
2316 { |
2252 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0027")); |
2317 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0027")); |
2253 INFO_PRINTF1(_L("TestCaseNotifyWhenAvailableGlobal")); |
2318 INFO_PRINTF1(_L("TestCaseNotifyWhenAvailableGlobal")); |
2254 TRAPD(ret, TestCaseNotifyWhenAvailableGlobal()); |
2319 TRAPD(ret, TestCaseNotifyWhenAvailableGlobal()); |
2255 TEST(ret == KErrNone); |
2320 TEST(ret == KErrNone); |
2256 break; |
2321 break; |
2257 } |
2322 } |
2258 case 19: |
2323 case 20: |
2259 { |
2324 { |
2260 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0029")); |
2325 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0029")); |
2261 INFO_PRINTF1(_L("TestCaseRegisterIdenticalPrioritiesL")); |
2326 INFO_PRINTF1(_L("TestCaseRegisterIdenticalPrioritiesL")); |
2262 TRAPD(ret, TestCaseRegisterIdenticalPrioritiesL()); |
2327 TRAPD(ret, TestCaseRegisterIdenticalPrioritiesL()); |
2263 TEST(ret == KErrNone); |
2328 TEST(ret == KErrNone); |
2264 break; |
2329 break; |
2265 } |
2330 } |
2266 case 20: |
2331 case 21: |
2267 {//should be the last test case |
2332 {//should be the last test case |
2268 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0021")); |
2333 ((CTSurfaceUpdateStep*)iStep)->SetTestStepID(_L("GRAPHICS-SURFACEUPDATE-0021")); |
2269 INFO_PRINTF1(_L("TestCaseTerminateServer")); |
2334 INFO_PRINTF1(_L("TestCaseTerminateServer")); |
2270 TRAPD(ret, TestCaseTerminateServer()); |
2335 TRAPD(ret, TestCaseTerminateServer()); |
2271 TEST(ret == KErrNone); |
2336 TEST(ret == KErrNone); |