buteo-sync

* Test plan for component: buteo-sync

Dependents/Clients

None

Test Plan

This test plan is not supposed to be complete; use it to guide your manual testing so they dont miss big functional areas that are part in the component; also this should be used as guideline to inspire the exploratory testing which should be adapted smartly based on the real content of a MP

Steps

  • Install latest image on phone
  • Make sure that you have the last version of the package "buteo-sync-plugins-contacts-google" installed.

  • Make sure that you have internet connection on phone
  • Install freshly build MPs that are needed for landing
    • - Reboot the device (or restart msyncd)
  • Add a local contact
  • Add a google on-line account
    • Test if the sync will start (the sync icon will be disabled for a few secs)
    • Test if the sync will finished successful (the sync icon will became enabled again)
    • Test if all contacts was imported from the google account
  • Click in one of the imported contacts: check the field "AddressBook" contains the correct gmail address (on-line account e-email).

  • Click on the local contact: check the field "AddressBook" contains "Personal".

  • Edit any imported contact: wait about 5 min and check if the contact was updated on the google server.
  • Delete any imported contact: wait about 5 min and check if the contact was removed on google server.
  • Create a new contact and choose the gmail address from the "AddressBook" list before save it: wait about 2 min and check if the contact was created in the google server.

  • Disable the contact sync on on-line accounts:
    • Edit/Delete/create any contact from this account: wait about 5 min check if the changes did not get propagated to the server.
  • Enable contact sync on on-line accounts: click on sync button and check if all changes done before was propagated to the server.
  • Test Network
    • offline mode
      • enable flight mode
      • edit a contact in address book
      • disable flight mode
      • wait about 2 min and check if the change was propagated to the server
    • Sync on 4g/3g/2g (create new account)
      • make sure that you do not have any account registered
        • - remove the dir: .config/com.ubuntu.address-book
      • turn off wifi
        • - make sure that you have a mobile data connection working
      • open address book
      • choose the option to create a new account
        • - fill the necessary information
      • After go back to the app check if the contact sync started
    • Sync on 4g/3g/2g (manual sync)
      • turn off wifi
        • - make sure that you have a mobile data connection working
      • Edit any contact
      • wait for 5 min and make sure that the contact did not sync automatically
      • click on sync button wait for the sync finish and check if the contacts got update on google
      • turn on the wifi
      • check if the sync does not happen (you did the manual sync already)
    • Sync on 4g/3g/2g (sync pending jobs over wifi)
      • turn off wifi
        • - make sure that you have a mobile data connection working
      • Edit any contact
      • wait for 5 min and make sure that the contact did not sync automatically
      • turn on the wifi
      • wait for 5 min and check if the contacts got synced with your google account
  • Test account removal
    • After run all tests remove the online accounts and check if all contacts get removed from address-book-app

Known issues

  • Avatar update on google is async and can take longer than 6 secs. If you sync a new avatar for any contact, you need to wait about 6-10 secs before modify it again locally, otherwise the timestamp for the remote contact will be bigger than the local contact, and this will cause the server to overwrite the local changes for this specific contacts.
  • Changes in one address-book causes all address-books get synced.
  • Test invalid account token (fail to sync) - The Idea is integrate that with download indicator where We can notify a sync error and if the user click on it, It will open the online-account authentication.

    • setup a Google online account
    • sync contacts with this account from address-book-app
    • go to http://myaccount.google.com/ click on "Account permissions" item

    • select ubuntu from the list
    • click on "revoke access" button on the top right
    • Try to sync contacts again from address-book-app
    • A notification should appear asking if you want to re-new your account toke
    • Click on yes
    • A sync-monitor helper app should appear asking to click on the account to re-authenticate
    • After clicking on the account you need to approve the permissions again
    • After approve the permissions the application should close
    • Go to address-book-app and try to sync (it should works now)

Process/Merges/TestPlan/buteo-sync (last edited 2015-12-18 15:50:31 by b3ebd3b5)