[UTC][contacts-service2][ACR-734]Add progress callback in the SIM Contacts import API
authorJongkyu Koo <jk.koo@samsung.com>
Thu, 18 Aug 2016 06:15:51 +0000 (15:15 +0900)
committerJongkyu Koo <jk.koo@samsung.com>
Thu, 18 Aug 2016 06:29:07 +0000 (15:29 +0900)
Change-Id: I7a70171db2105e095dbffc1a74012195ae02504a
Signed-off-by: Jongkyu Koo <jk.koo@samsung.com>
src/utc/contacts-service2/utc-contacts-service-sim.c

index 9d5d48b..b375630 100755 (executable)
@@ -23,6 +23,8 @@
 #include "utc-contacts-service-tc-utils.h"
 
 static int _startup_err;
+static bool _cb_invoked = false;
+
 
 /**
  * @function           utc_contacts_service2_sim_startup
@@ -173,6 +175,11 @@ int utc_contacts_service2_sim_get_initialization_status_by_sim_slot_no_n(void)
        return 0;
 }
 
+static void _import_progress_cb(int total, int imported_cnt, void *user_data)
+{
+       _cb_invoked = true;
+}
+
 /**
  * @testcase           utc_contacts_service2_sim_import_all_contacts_by_sim_slot_no_p
  * @since_tizen                3.0
@@ -192,10 +199,11 @@ int utc_contacts_service2_sim_import_all_contacts_by_sim_slot_no_p(void)
                        break;
 
                for (cnt = 0; cnt < handle_list.count; cnt++) {
-                       ret = contacts_sim_import_all_contacts_by_sim_slot_no(cnt);
-                       if (CONTACTS_ERROR_NO_DATA != ret && 0 != cnt)
+                       _cb_invoked= false;
+                       ret = contacts_sim_import_all_contacts_by_sim_slot_no(cnt, _import_progress_cb, NULL);
                        if ((CONTACTS_ERROR_NONE != ret && CONTACTS_ERROR_NO_DATA != ret)
-                                       ||(CONTACTS_ERROR_NO_DATA == ret && 0 == cnt)) { /* first SIM should be inserted */
+                                       ||(CONTACTS_ERROR_NO_DATA == ret && 0 == cnt) /* first SIM should be inserted and has SIM contacts*/
+                                       ||(CONTACTS_ERROR_NONE == ret && false == _cb_invoked)) {
                                is_failed = true;
                                break;
                        }
@@ -228,7 +236,7 @@ int utc_contacts_service2_sim_import_all_contacts_by_sim_slot_no_n(void)
        assert_eq(_startup_err, 0);
 
        int ret = 0;
-       ret = contacts_sim_import_all_contacts_by_sim_slot_no(-1);
+       ret = contacts_sim_import_all_contacts_by_sim_slot_no(-1, NULL, NULL);
        assert_eq(CONTACTS_ERROR_INVALID_PARAMETER, ret);
 
        return 0;