{"text_format":"3","workbook":"xls","n_sheets":3,"sheets":["Automated","Manual","Doc Info"],"not_rendered":{"external_links":1,"defined_names":7},"read":"whole","date_system":"1900","formulas":"cached_only"}

{"sheet":"Automated","index":0,"n_rows":10,"n_cols":15,"rows_kept":10,"flags":["formulas_cached_only"]}
["Test Case ID","Test Case Name","Requirements Tested","Priority","Test Type","Test Purpose","Test Actions","Expected Results","Test Status","Comments"]
["API-APPFWK-VIEWSRV-0001","Ensure ViewServer responds with permission denied for test server without capabilities.","Unknown",1,"CIT","Ensure ViewSrv responds with KErrPermissionDenied for test server witout any capabalities","Connect to ViewServer and check whether test server process has the permission to access the mentioned apis\nCVwsSessionWrapper::NewL();\nCVwsSessionWrapper::SetSystemDefaultView(const TVwsViewId &aViewId);\nCVwsSessionWrapper::SetClientRequestTimeOut(TTimeIntervalMicroSeconds32 aDuration);\nCVwsSessionWrapper::SetServerEventTimeOut(TTimeIntervalMicroSeconds32 aDuration);\nCVwsSessionWrapper::EnableServerEventTimeOut(TBool aEnable);\nCVwsSessionWrapper::ShutdownViewServer();","Test should complete without any panic.The called API's should return KErrPermissionDenied.","Implemented","Negative Test"]
["API-APPFWK-VIEWSRV-0002","Ensure ViewServer responds with permission denied for test server without the correct capabilities.","Unknown",1,"CIT","Ensure ViewServer responds with permission denied for test server without the correct capabilities.","Connect to ViewServer and check whether test server process has the permission to access the mentioned apis\nCVwsSessionWrapper::NewL();\nCVwsSessionWrapper::SetSystemDefaultView(const TVwsViewId &aViewId);\nCVwsSessionWrapper::SetClientRequestTimeOut(TTimeIntervalMicroSeconds32 aDuration);\nCVwsSessionWrapper::SetServerEventTimeOut(TTimeIntervalMicroSeconds32 aDuration);\nCVwsSessionWrapper::EnableServerEventTimeOut(TBool aEnable);\nCVwsSessionWrapper::ShutdownViewServer();","Test should complete without any panic. The called API's should return KErrNone for capability tests and KErrPermissionDenied for secure id tests.","Implemented","Negative Test"]
["API-APPFWK-VIEWSRV-0003","Addition and activation of views using View architecture support","DEF117572",1,"CIT","Check if views can be added and activated correctly","The tests performed are addition of views to an application. Views 1, 2 & 5 are added, and activation of these views is tested (both with and without a custom message associated to the activation). In addition, the getter and setter functionality of application default view, and system default views are tested.","Views are added and activated as expected with no error returned. Getter & setter funtions get & set accordingly too.","Implemented"]
["API-APPFWK-VIEWSRV-0004","Control notification in views using View architecture support","DEF117572",1,"CIT","Check if controls receive correct notifications","1. The tests performs a simulation of EKeyEvents sent to the application to check how both test controls (Top & Bottom) receive them, as well as the AppUi control. A counter is increased everytime the key is processed, and usually the key is never consumed, hence it goes to the next control in the loop.\n2. Just some specific EKeyEvents are consumed to check that the next control do not receive it. \n3. Priorities and flags are updated to test the notifications are still correctly received. \n4. Change of active view is rezuested and tested.","Controls receive notifications as expected depending of their flags and / or priorities.","Implemented"]
["API-APPFWK-VIEWSRV-0005","Negative testing using View architecture support","DEF117572",1,"CIT","Check negetive scenarios for viewsrv","Negative testing is implenented in this test case, with the following being done:\n        - Activation of a non existing view, \n        - Activation of view of a non existing app\n        - CheckSourceOfViewSwitchL leaves with KErrUnknown if called outside of \n         an implementation of MCoeView's ViewConstructL or ViewActivatedL\n        - OOM testing.","The framework behaves as expected returning the appropiate error return value.","Implemented","Negative Test",{"$nulls":4},"priorities."]
["API-APPFWK-VIEWSRV-0006","Add view activation and deactivation observers using View architecture support","DEF117572",1,"CIT","Check if activation and deactivation observers receive correct notifications","Observers are added to the application to check the correct observers are notified. A counter is increased everytime the observer is notified, so the test performs several view activations and deactivations to check that they are hit correctly. Also observers that call NotifyNextActivation are used, which should only be hit once. In addition, several consecutive activations (with and without message) are tested to test multiple activations","For each view activation and deactivation the correct observers are notified and the counter associated to them corresponds with the expected value.","Implemented",{"$nulls":4},"In addition, the getter and setter functionality of application default"]
["API-APPFWK-VIEWSRV-0007","Registers a pseudo-view for the application using View architecture support","DEF117572",1,"CIT","Check behavior of pseudo-views are the same as normal views","The test implements the registration of a pseudo-view after removing view 1. Once this pseudo-view is in place, check that activating and deactivating it works as expected. EKeyEvents are sent and controls are check to make sure the correct ones have been hit, while the pseudo-view is active and while not. In addition, the number of observers notifications is checked.  ","The pseudo-view is correctly added and activated. Also the correct observers and controls are notified and the counter associated to them corresponds with the expected value.","Implemented",{"$nulls":4},"view, and system default views are tested."]
["API-APPFWK-VIEWSRV-0008","Create an embedded appUi using View architecture support","DEF117572",1,"CIT","Check that when an embedded application is activated, deactivation does not take place completely","The test implements the creation of an embedded appUi. Once this app is in place views 3 and 4 are added to it. Check the activation and deactivation of these views works as expected. In addition, the number of observers notifications is checked. It has to be noted here that when activating embedded appUi views, the current active view for the normal appUi is not fully deactivated, hence no observers receive notifications.         ","The embedded view is correctly created and activated. Also the correct observers are notified and the counter associated to them corresponds with the expected value.","Implemented"," Note: The implementation of this test does not fully comform with the actual concept of what a standard embedded appUi is. For a fully meaningful test, it should be changed to be a complete embedded app. have any relationship with other windows or views."]
["API-APPFWK-VIEWSRV-0009","Notify next activation with viewId using Cone view architecture support","DEF117572",1,"CIT","Check notifications for specific viewid's","The test implements the activation and deactivation of a view while registering an observer to be notified for the next activation and deactivation, but with the difference that now we only want to be notified for a certain viewId, not any of them.","The appropiate observer is notified and the counter associated to them corresponds with the expected value after the view with viewId is activated and / or deactivated."]

{"sheet":"Manual","index":1,"n_rows":9,"n_cols":6,"rows_kept":9,"flags":["formulas_cached_only"]}
["Test ID","Test Case Name","State of Phone","Test Actions","Expected Results","Comments"]
["API-VIEWSRV-MANUAL-0001","Switch between views of the same application.","Device is booted","Switch between views of the same application.\nOpen Menu in emulator. Change the menu view (Eg. From Grid menu to List menu)","Check the smooth switch between views of same application"]
["API-VIEWSRV-MANUAL-0002","Switch between two different applications.","Device is booted","Open any two applications, for example Contacts and Messaging. Open task list by long press on menu key.\nSwitch between the open applications.","Check the smooth switch between views of different applications"]
["API-VIEWSRV-MANUAL-0003","Switch between two instances of same application.(Active view of both these instances should be same)","Device is booted","a. Start the Voice Recorder(VR) app and start recording.\nb. Start the messaging app and create a new message.\nc. Insert a audio clip and select \"Open Voice Recorder\"\nNow we have two instances of voice recorder running.\nd. Start recording.\ne. Long press on the apps key ->Switch to VR\nHere recording has paused in VR.\nf. Start recording.(This should not cause any problem)\ng. Switch to Messeging.\nRecording should have paused here.","Recording should pause(not stop) when recorder is not in foreground","Specific to S60 emulator"]
["API-VIEWSRV-MANUAL-0004","Switch to a some view of an application which is not running","Device is booted","Start messaging\nOpen contacts application through messaging (Make sure that contacts application is not already open)","Contacts application should open and is in the foreground"]
["API-VIEWSRV-MANUAL-0005","Check foreground view is not deactivated when a background application activates its view in the background","Device is booted","ActivateViewTest application(placed in \\\\banfiler01\\Software Engineering\\Teams\\AppProV and Install\\ViewSrv\\ActiveViewTest) is required for this.\na. Start messaging app\nb. Start ActivateViewTest app\nc. Use Options | Hello to test ActivateViewTest. It will report the active view id is 0x0A0E6947, as it is in the foreground and active.\nd. Use the fast swap window (long press of apps key) to switch to messaging app.\ne. Exit messaging app with the right softkey. (At this point messaging app does not actually exit, but goes into the background and activates its default view.)\nf. ActivateViewTest appears in the foreground again.\nUse Options | Hello again. This time the view id should be 0x0A0E6947 indicating that its view was not deactivated.","Check if active view of ActiveViewTest application is 0x0A0E6947","Specific to S60 emulator"]
["API-VIEWSRV-MANUAL-0006","Check foreground view is not deactivated when a background application activates its view in the background","Device is booted","Make these changes in tview1.\nBefore we are requesting for activation of view, set Custom Control to a positive value using CAppUi::SetCustomControl().\nMake these changes in tview2.\nAfter requesting for activation of view, get the present active view through CCoeAppUi::GetActiveViewId().\na. Start tview1.\nb. Switch from tview1.view2 to tview1.view1\nview1.view1 will come to the foreground     //Custom control should not cause any changes when app is in foreground\nc. Start tview2 through tview1.\nd. Switch from tview2 to tview1.\ntview1 will not come to the foreground since custom control is set.\ntview2 remains in  the foreground.\nNotice active viewid of tview2 is tview2.view1\ne. Switch from tview2.view1 to tview2.view2\ntview2.view2 should be in foreground.\nNotice active viewed of tview2 is tview2.view2","Check if behavior is as described"]
["API-VIEWSRV-MANUAL-0007","Check behavior of activating view of an application a second time without deactivation","Device is booted","a.  Open any application\nb.  Long press on the apps key and choose the same application","The application should remain in foreground after second activation."]
["API-VIEWSRV-MANUAL-0008","Change themes","Device is booted","Change the theme of device","Check for smooth transition while changing theme"]

{"sheet":"Doc Info","index":2,"n_rows":31,"n_cols":6,"rows_kept":31,"merged":[[0,1,0,5],[2,1,2,5],[3,4,3,5],[4,4,4,5],[5,4,5,5],[6,4,6,5],[7,4,7,5],[8,4,8,5],[10,1,10,5],[11,4,11,5],[12,4,12,5],[13,4,13,5],[14,4,14,5],[15,4,15,5],[16,4,16,5],[18,1,18,5],[20,1,20,5],[21,1,21,2],[21,3,21,5],[22,1,22,2],[22,3,22,5],[25,1,25,5]],"flags":["formulas_cached_only"]}
[null,"APR_Viewsrv_TestSpecification.xls"]
[]
[null,"About this Document"]
[null,"Document Reference","N/A","Authors","Rashmi Udayashankar"]
[null,"Security Classification","Internal","Owners","APR"]
[null,"Team / Department","APR","Reviewers","Kavita Khatawate\nSowmya Mysore"]
[null,"Last Revised Date",null,"Contributors","Rashmi Udayashankar"]
[null,"Status","For Review","Approver","Kavita Khatawate"]
[null,"Version","v1.1","Distribution","Internal"]
[]
[null,"References"]
[null,"No.","Document Reference","Version","Description"]
[]
[]
[]
[]
[]
[]
[null,"Open Issues"]
[]
[null,"Glossary"]
[null,"Term",null,"Definition"]
[null,"APR",null,"Application Provisioning and Installation"]
[]
[]
[null,"Document History"]
[null,"Date","Version","Status","Author","Description"]
[null,"2008-08-08","v0.1","Draft","Rashmi Udayashankar","Test specification for Viewsrv"]
[null,"28/8/2008","v1.0","Issued","Rashmi Udayashankar","Test specification for Viewsrv"]
[null,"2008-11-06","V1.1","For Review","Nithi","Update  for migration to TMS"]
[null,"27/1/2009","v1.2","For Review","Rashmi Udayashankar","Removal of unwanted test cases"]