[DEBUG 00:00:00] *** starting Client::Sync::eds_contact::testUpdate *** [DEBUG 00:00:00] ClientTest.cpp:3825: starting CPPUNIT_ASSERT(sources.begin() != sources.end()) [DEBUG 00:00:00] ClientTest.cpp:3825: ending CPPUNIT_ASSERT(sources.begin() != sources.end()) [DEBUG 00:00:00] ClientTest.cpp:3826: starting CPPUNIT_ASSERT(!sources.begin()->second->config.m_updateItem.empty()) [DEBUG 00:00:00] ClientTest.cpp:3826: ending CPPUNIT_ASSERT(!sources.begin()->second->config.m_updateItem.empty()) [DEBUG 00:00:00] ClientTest.cpp:3829: starting doCopy() [DEBUG 00:00:00] ClientTest.cpp:3130: starting CPPUNIT_ASSERT(accessClientB) [DEBUG 00:00:00] ClientTest.cpp:3130: ending CPPUNIT_ASSERT(accessClientB) [DEBUG 00:00:00] ClientTest.cpp:3132: starting deleteAll() [DEBUG 00:00:00] ClientTest.cpp:3116: starting allSourcesDeleteAll() [DEBUG 00:00:00] ClientTest.cpp:6491: starting source_pair.second->deleteAll(source_pair.second->createSourceA) [DEBUG 00:00:00] ClientTest.cpp:802: starting CPPUNIT_ASSERT(createSource.createSource) [DEBUG 00:00:00] ClientTest.cpp:802: ending CPPUNIT_ASSERT(createSource.createSource) [DEBUG 00:00:00] ClientTest.cpp:807: starting source.reset(createSource()) [DEBUG 00:00:00] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _1_A [DEBUG 00:00:00] overriding testing source eds_contact properties with the ones from config edsdav_1 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-1/peers/edsdav_1 [DEBUG 00:00:00] sync = two-way (set) [DEBUG 00:00:00] uri = addressbook (set) [DEBUG 00:00:00] backend = Evolution Address Book (set) [DEBUG 00:00:00] syncFormat = (default) [DEBUG 00:00:00] forceSyncFormat = 0 (default) [DEBUG 00:00:00] database = Test_eds_contact_1 (set) [DEBUG 00:00:00] databaseFormat = (default) [DEBUG 00:00:00] databaseUser = (default) [DEBUG 00:00:00] databasePassword = (default) [DEBUG 00:00:02] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _1_A [DEBUG 00:00:02] overriding testing source eds_contact properties with the ones from config edsdav_1 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-1/peers/edsdav_1 [DEBUG 00:00:02] sync = two-way (set) [DEBUG 00:00:02] uri = addressbook (set) [DEBUG 00:00:02] backend = Evolution Address Book (set) [DEBUG 00:00:02] syncFormat = (default) [DEBUG 00:00:02] forceSyncFormat = 0 (default) [DEBUG 00:00:02] database = Test_eds_contact_1 (set) [DEBUG 00:00:02] databaseFormat = (default) [DEBUG 00:00:02] databaseUser = (default) [DEBUG 00:00:02] databasePassword = (default) [DEBUG 00:00:02] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:02] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:02] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:02] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:02] ClientTest.cpp:431: starting get()->open() [DEBUG 00:00:02] ClientTest.cpp:431: ending get()->open() [DEBUG 00:00:02] eds_contact: slow sync or testing, do full item scan to detect changes [DEBUG 00:00:02] ClientTest.cpp:807: ending source.reset(createSource()) [DEBUG 00:00:02] ClientTest.cpp:807: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:02] ClientTest.cpp:807: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:02] ClientTest.cpp:810: starting source->removeAllItems() [DEBUG 00:00:02] ClientTest.cpp:810: ending source->removeAllItems() [DEBUG 00:00:02] ClientTest.cpp:810: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:02] ClientTest.cpp:810: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:02] ClientTest.cpp:811: starting source.reset() [DEBUG 00:00:02] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:02] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:02] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:00:02] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:00:02] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:02] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:02] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:00:02] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:00:02] ClientTest.cpp:463: starting get()->close() [DEBUG 00:00:02] ClientTest.cpp:463: ending get()->close() [DEBUG 00:00:02] ClientTest.cpp:811: ending source.reset() [DEBUG 00:00:02] ClientTest.cpp:814: starting source.reset(createSource()) [DEBUG 00:00:02] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _1_A [DEBUG 00:00:02] overriding testing source eds_contact properties with the ones from config edsdav_1 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-1/peers/edsdav_1 [DEBUG 00:00:02] sync = two-way (set) [DEBUG 00:00:02] uri = addressbook (set) [DEBUG 00:00:02] backend = Evolution Address Book (set) [DEBUG 00:00:02] syncFormat = (default) [DEBUG 00:00:02] forceSyncFormat = 0 (default) [DEBUG 00:00:02] database = Test_eds_contact_1 (set) [DEBUG 00:00:02] databaseFormat = (default) [DEBUG 00:00:02] databaseUser = (default) [DEBUG 00:00:02] databasePassword = (default) [DEBUG 00:00:02] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:02] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:02] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:02] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:02] ClientTest.cpp:431: starting get()->open() [DEBUG 00:00:02] ClientTest.cpp:431: ending get()->open() [DEBUG 00:00:02] eds_contact: using full item scan to detect changes [DEBUG 00:00:02] ClientTest.cpp:814: ending source.reset(createSource()) [DEBUG 00:00:02] ClientTest.cpp:814: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:02] ClientTest.cpp:814: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:02] ClientTest.cpp:818: starting CPPUNIT_ASSERT_MESSAGE(("should be empty now"), ((countItems(source.get()) == 0))) [DEBUG 00:00:02] ClientTest.cpp:818: ending CPPUNIT_ASSERT_MESSAGE(("should be empty now"), ((countItems(source.get()) == 0))) [DEBUG 00:00:02] ClientTest.cpp:818: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:02] ClientTest.cpp:818: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:02] ClientTest.cpp:819: starting CPPUNIT_ASSERT_EQUAL((0),(countNewItems(source.get()))) [DEBUG 00:00:02] ClientTest.cpp:819: ending CPPUNIT_ASSERT_EQUAL((0),(countNewItems(source.get()))) [DEBUG 00:00:02] ClientTest.cpp:820: starting CPPUNIT_ASSERT_EQUAL((0),(countUpdatedItems(source.get()))) [DEBUG 00:00:02] ClientTest.cpp:820: ending CPPUNIT_ASSERT_EQUAL((0),(countUpdatedItems(source.get()))) [DEBUG 00:00:02] ClientTest.cpp:821: starting CPPUNIT_ASSERT_EQUAL((0),(countDeletedItems(source.get()))) [DEBUG 00:00:02] ClientTest.cpp:821: ending CPPUNIT_ASSERT_EQUAL((0),(countDeletedItems(source.get()))) [DEBUG 00:00:02] ClientTest.cpp:391: starting reset(__null) [DEBUG 00:00:02] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:02] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:02] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:00:02] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:00:02] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:02] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:02] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:00:02] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:00:02] ClientTest.cpp:463: starting get()->close() [DEBUG 00:00:02] ClientTest.cpp:463: ending get()->close() [DEBUG 00:00:02] ClientTest.cpp:391: ending reset(__null) [DEBUG 00:00:02] ClientTest.cpp:6491: ending source_pair.second->deleteAll(source_pair.second->createSourceA) [DEBUG 00:00:02] ClientTest.cpp:3116: ending allSourcesDeleteAll() [DEBUG 00:00:02] ClientTest.cpp:3117: starting doSync(logPrefix, options) [DEBUG 00:00:03] 1. starting Client_Sync_eds_contact_testUpdate.copy.deleteall.refreshserver.client.A with sync mode refresh-from-client [DEBUG 00:00:03] ClientTest.cpp:6460: starting res = client.doSync(sourceArray, logname, options) [DEBUG 00:00:03] log path -> /data/runtests/work/testing-amd64/home/edsdav/cache/syncevolution, No such file or directory [DEBUG 00:00:03] log path -> Client_Sync_eds_contact_testUpdate.copy.deleteall.refreshserver.client.A, No such file or directory [DEBUG 00:00:03] log path -> Client_Sync_eds_contact_testUpdate.copy.deleteall.refreshserver.client.A, No such file or directory [DEBUG 00:00:03] checking log dir Client_Sync_eds_contact_testUpdate.copy.deleteall.refreshserver.client.A [DEBUG 00:00:03] logfile: Client_Sync_eds_contact_testUpdate.copy.deleteall.refreshserver.client.A/syncevolution-log.html [DEVELOPER 00:00:06] SyncML server account: user01 [DEVELOPER 00:00:06] client: SyncEvolution 1.5.3 for workstation [DEVELOPER 00:00:06] device ID: client-edsdav_1 [DEVELOPER 00:00:06] [DEVELOPER 00:00:06] [INFO 00:00:06] addressbook: inactive [INFO 00:00:06] calendar: inactive [INFO 00:00:06] calendar+todo: inactive [INFO 00:00:06] eas_contact: inactive [INFO 00:00:06] eas_event: inactive [INFO 00:00:06] eas_memo: inactive [INFO 00:00:06] eas_task: inactive [INFO 00:00:06] eds_event: inactive [INFO 00:00:06] eds_memo: inactive [INFO 00:00:06] eds_task: inactive [INFO 00:00:06] file_calendar+todo: inactive [INFO 00:00:06] file_contact: inactive [INFO 00:00:06] file_event: inactive [INFO 00:00:06] file_task: inactive [INFO 00:00:06] kde_contact: inactive [INFO 00:00:06] kde_event: inactive [INFO 00:00:06] kde_memo: inactive [INFO 00:00:06] kde_task: inactive [INFO 00:00:06] memo: inactive [INFO 00:00:06] todo: inactive [DEBUG 00:00:06] checking password property 'password' in config 'edsdav_1@client-test-edsdav-1' with user identity 'user01' [DEBUG 00:00:06] loading password from keyring with key user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:00:06] not using KWallet [DEBUG 00:00:06] sync password for edsdav_1@client-test-edsdav-1: loaded password from GNOME keyring using user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:00:07] checking password property 'databasePassword' in datastore 'eds_contact' of config 'edsdav_1@client-test-edsdav-1' with user identity '' [DEBUG 00:00:07] sync is starting, catch signals [DEBUG 00:00:07] SuspendFlags: (re)activating, currently inactive [DEBUG 00:00:07] SuspendFlags: activating signal handler(s) with fds 38->37 [DEBUG 00:00:07] SuspendFlags: catch signal 15 [DEBUG 00:00:07] ready to sync [DEBUG 00:00:07] CreateContext SyncEvolution//eds_contact => 0 [DEBUG 00:00:07] Module_Version = 01090100 [DEBUG 00:00:07] Module_Capabilities: [DEBUG 00:00:07] PLATFORM:Linux [DEBUG 00:00:07] DLL:true [DEBUG 00:00:07] MINVERSION:V1.0.6.0 [DEBUG 00:00:07] MANUFACTURER:SyncEvolution [DEBUG 00:00:07] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:00:07] plugin_datastore_str:no [DEBUG 00:00:07] plugin_datastore_key:yes [DEBUG 00:00:07] ITEM_AS_KEY:yes [DEBUG 00:00:07] plugin_datablob:no [DEBUG 00:00:07] eds_contact: Module_PluginParams [DEBUG 00:00:07] eds_contact: Engine=01090100 [DEBUG 00:00:07] eds_contact: [DEBUG 00:00:07] Module_Capabilities: [DEBUG 00:00:07] PLATFORM:Linux [DEBUG 00:00:07] DLL:true [DEBUG 00:00:07] MINVERSION:V1.0.6.0 [DEBUG 00:00:07] MANUFACTURER:SyncEvolution [DEBUG 00:00:07] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:00:07] plugin_datastore_str:no [DEBUG 00:00:07] plugin_datastore_key:yes [DEBUG 00:00:07] ITEM_AS_KEY:yes [DEBUG 00:00:07] plugin_datablob:no [DEBUG 00:00:07] copying syncURL, username, password to Synthesis engine [DEBUG 00:00:07] using plain username/password for user01 [DEBUG 00:00:08] eds_contact: total number of items received 0 [INFO 00:00:26] eds_contact: starting first time sync from client (peer is server) [DEBUG 00:00:26] reading: set read-ahead based on sync mode refresh-from-local [DEBUG 00:00:26] eds_contact: reading: set order 'all', 0 luids [DEBUG 00:00:26] eds_contact: 'eds_contact' dev='anydevice' usr='singleuser' err=0 [DEBUG 00:00:26] eds_contact: FilterSupport staticfilter: [DEBUG 00:00:26] eds_contact: dynamicfilter: [DEBUG 00:00:26] eds_contact: invisiblefilter: [DEBUG 00:00:26] eds_contact: ContextSupport ReadNextItem:allfields [DEBUG 00:00:26] eds_contact: [DEBUG 00:00:26] eds_contact: slow sync or testing, do full item scan to detect changes [DEBUG 00:00:26] eds_contact: StartDataRead last='' resume='' res=0 [DEBUG 00:00:26] eds_contact: ReadNextItemAsKey aStatus=0 aID=((null),(null)) res=0 [DEBUG 00:00:26] eds_contact: EndDataRead res=0 [DEBUG 00:00:26] eds_contact: StartDataWrite [DEBUG 00:00:26] eds_contact: total number of items received 0 [INFO 00:00:28] eds_contact: started [DEBUG 00:00:28] eds_contact: total number of items received 0 [DEBUG 00:00:28] eds_contact: EndDataWrite COMMIT '1' res=0 [DEBUG 00:00:28] eds_contact: DeleteContext [INFO 00:00:28] eds_contact: first time sync done successfully [DEBUG 00:00:28] closing session [DEBUG 00:00:28] session closed [DEBUG 00:00:28] SuspendFlags: deactivating fds 38->37 [DEBUG 00:00:28] SuspendFlags: close m_receiverFD 37 [DEBUG 00:00:28] SuspendFlags: close m_senderFD 38 [DEBUG 00:00:28] SuspendFlags: done with deactivation [DEBUG 00:00:28] Module_DeleteContext eds_contact [INFO 00:00:28] sync report: [INFO 00:00:28] +---------------|-----------------------|-----------------------|-CON-+ [INFO 00:00:28] | | LOCAL | REMOTE | FLI | [INFO 00:00:28] | Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS | [INFO 00:00:28] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:00:28] | eds_contact | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | [INFO 00:00:28] | refresh-from-local, 0 KB sent by client, 0 KB received | [INFO 00:00:28] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:00:28] | start Fri Jan 5 19:12:35 2018, duration 0:26min | [INFO 00:00:28] | synchronization completed successfully | [INFO 00:00:28] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:00:28] ----------|--------CLIENT---------|--------SERVER---------| [INFO 00:00:28] | NEW | MOD | DEL | NEW | MOD | DEL | [INFO 00:00:28] ----------|-----------------------------------------------| [INFO 00:00:28] Expected | 0 | 0 | 0 | 0 | 0 | -1 | [INFO 00:00:28] Expected sync mode: refresh-from-local [INFO 00:00:28] Expected cycles: 1 [INFO 00:00:28] [DEBUG 00:00:28] ClientTest.cpp:8283: starting CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:00:28] ClientTest.cpp:8283: ending CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:00:28] ClientTest.cpp:8284: starting CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:00:28] ClientTest.cpp:8284: ending CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:00:28] Checking sync source eds_contact... [DEBUG 00:00:28] ClientTest.cpp:8293: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:00:28] ClientTest.cpp:8293: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:00:28] ClientTest.cpp:8305: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:00:28] ClientTest.cpp:8305: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:00:28] ClientTest.cpp:8308: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:00:28] ClientTest.cpp:8308: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:00:28] ClientTest.cpp:8319: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:00:28] ClientTest.cpp:8319: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:00:28] ClientTest.cpp:8322: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:00:28] ClientTest.cpp:8322: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:00:28] ClientTest.cpp:8328: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:28] ClientTest.cpp:8328: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:28] ClientTest.cpp:8334: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:28] ClientTest.cpp:8334: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:28] ClientTest.cpp:8340: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:28] ClientTest.cpp:8340: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:28] ClientTest.cpp:8347: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:28] ClientTest.cpp:8347: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:28] ClientTest.cpp:8353: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:28] ClientTest.cpp:8353: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:28] Done with checking sync report. [DEBUG 00:00:28] ClientTest.cpp:6460: ending res = client.doSync(sourceArray, logname, options) [DEBUG 00:00:28] ClientTest.cpp:6465: starting postSync(res, logname) [DEBUG 00:00:28] ClientTest.cpp:6465: ending postSync(res, logname) [DEBUG 00:00:28] ClientTest.cpp:3117: ending doSync(logPrefix, options) [DEBUG 00:00:28] ClientTest.cpp:3132: ending deleteAll() [DEBUG 00:00:28] ClientTest.cpp:3116: starting allSourcesDeleteAll() [DEBUG 00:00:28] ClientTest.cpp:6491: starting source_pair.second->deleteAll(source_pair.second->createSourceA) [DEBUG 00:00:28] ClientTest.cpp:802: starting CPPUNIT_ASSERT(createSource.createSource) [DEBUG 00:00:28] ClientTest.cpp:802: ending CPPUNIT_ASSERT(createSource.createSource) [DEBUG 00:00:28] ClientTest.cpp:807: starting source.reset(createSource()) [DEBUG 00:00:28] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _2_A [DEBUG 00:00:28] overriding testing source eds_contact properties with the ones from config edsdav_2 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-2/peers/edsdav_2 [DEBUG 00:00:28] sync = two-way (set) [DEBUG 00:00:28] uri = addressbook (set) [DEBUG 00:00:28] backend = Evolution Address Book (set) [DEBUG 00:00:28] syncFormat = (default) [DEBUG 00:00:28] forceSyncFormat = 0 (default) [DEBUG 00:00:28] database = Test_eds_contact_2 (set) [DEBUG 00:00:28] databaseFormat = (default) [DEBUG 00:00:28] databaseUser = (default) [DEBUG 00:00:28] databasePassword = (default) [DEBUG 00:00:28] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:28] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:28] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:28] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:28] ClientTest.cpp:431: starting get()->open() [DEBUG 00:00:29] ClientTest.cpp:431: ending get()->open() [DEBUG 00:00:29] eds_contact: slow sync or testing, do full item scan to detect changes [DEBUG 00:00:29] ClientTest.cpp:807: ending source.reset(createSource()) [DEBUG 00:00:29] ClientTest.cpp:807: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:29] ClientTest.cpp:807: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:29] ClientTest.cpp:810: starting source->removeAllItems() [DEBUG 00:00:29] ClientTest.cpp:810: ending source->removeAllItems() [DEBUG 00:00:29] ClientTest.cpp:810: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:29] ClientTest.cpp:810: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:29] ClientTest.cpp:811: starting source.reset() [DEBUG 00:00:29] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:29] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:29] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:00:29] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:00:29] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:29] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:29] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:00:29] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:00:29] ClientTest.cpp:463: starting get()->close() [DEBUG 00:00:29] ClientTest.cpp:463: ending get()->close() [DEBUG 00:00:29] ClientTest.cpp:811: ending source.reset() [DEBUG 00:00:29] ClientTest.cpp:814: starting source.reset(createSource()) [DEBUG 00:00:29] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _2_A [DEBUG 00:00:29] overriding testing source eds_contact properties with the ones from config edsdav_2 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-2/peers/edsdav_2 [DEBUG 00:00:29] sync = two-way (set) [DEBUG 00:00:29] uri = addressbook (set) [DEBUG 00:00:29] backend = Evolution Address Book (set) [DEBUG 00:00:29] syncFormat = (default) [DEBUG 00:00:29] forceSyncFormat = 0 (default) [DEBUG 00:00:29] database = Test_eds_contact_2 (set) [DEBUG 00:00:29] databaseFormat = (default) [DEBUG 00:00:29] databaseUser = (default) [DEBUG 00:00:29] databasePassword = (default) [DEBUG 00:00:29] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:29] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:29] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:29] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:29] ClientTest.cpp:431: starting get()->open() [DEBUG 00:00:29] ClientTest.cpp:431: ending get()->open() [DEBUG 00:00:29] eds_contact: using full item scan to detect changes [DEBUG 00:00:29] ClientTest.cpp:814: ending source.reset(createSource()) [DEBUG 00:00:29] ClientTest.cpp:814: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:29] ClientTest.cpp:814: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:29] ClientTest.cpp:818: starting CPPUNIT_ASSERT_MESSAGE(("should be empty now"), ((countItems(source.get()) == 0))) [DEBUG 00:00:29] ClientTest.cpp:818: ending CPPUNIT_ASSERT_MESSAGE(("should be empty now"), ((countItems(source.get()) == 0))) [DEBUG 00:00:29] ClientTest.cpp:818: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:29] ClientTest.cpp:818: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:29] ClientTest.cpp:819: starting CPPUNIT_ASSERT_EQUAL((0),(countNewItems(source.get()))) [DEBUG 00:00:29] ClientTest.cpp:819: ending CPPUNIT_ASSERT_EQUAL((0),(countNewItems(source.get()))) [DEBUG 00:00:29] ClientTest.cpp:820: starting CPPUNIT_ASSERT_EQUAL((0),(countUpdatedItems(source.get()))) [DEBUG 00:00:29] ClientTest.cpp:820: ending CPPUNIT_ASSERT_EQUAL((0),(countUpdatedItems(source.get()))) [DEBUG 00:00:29] ClientTest.cpp:821: starting CPPUNIT_ASSERT_EQUAL((0),(countDeletedItems(source.get()))) [DEBUG 00:00:29] ClientTest.cpp:821: ending CPPUNIT_ASSERT_EQUAL((0),(countDeletedItems(source.get()))) [DEBUG 00:00:29] ClientTest.cpp:391: starting reset(__null) [DEBUG 00:00:29] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:29] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:29] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:00:29] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:00:29] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:29] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:29] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:00:29] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:00:29] ClientTest.cpp:463: starting get()->close() [DEBUG 00:00:29] ClientTest.cpp:463: ending get()->close() [DEBUG 00:00:29] ClientTest.cpp:391: ending reset(__null) [DEBUG 00:00:29] ClientTest.cpp:6491: ending source_pair.second->deleteAll(source_pair.second->createSourceA) [DEBUG 00:00:29] ClientTest.cpp:3116: ending allSourcesDeleteAll() [DEBUG 00:00:29] ClientTest.cpp:3117: starting doSync(logPrefix, options) [DEBUG 00:00:29] 2. starting Client_Sync_eds_contact_testUpdate.deleteall.refreshserver.client.B with sync mode refresh-from-client [DEBUG 00:00:29] ClientTest.cpp:6460: starting res = client.doSync(sourceArray, logname, options) [DEBUG 00:00:29] log path -> /data/runtests/work/testing-amd64/home/edsdav/cache/syncevolution, No such file or directory [DEBUG 00:00:29] log path -> Client_Sync_eds_contact_testUpdate.deleteall.refreshserver.client.B, No such file or directory [DEBUG 00:00:29] log path -> Client_Sync_eds_contact_testUpdate.deleteall.refreshserver.client.B, No such file or directory [DEBUG 00:00:29] checking log dir Client_Sync_eds_contact_testUpdate.deleteall.refreshserver.client.B [DEBUG 00:00:29] logfile: Client_Sync_eds_contact_testUpdate.deleteall.refreshserver.client.B/syncevolution-log.html [DEVELOPER 00:00:31] SyncML server account: user01 [DEVELOPER 00:00:31] client: SyncEvolution 1.5.3 for workstation [DEVELOPER 00:00:31] device ID: client-edsdav_2 [DEVELOPER 00:00:31] [DEVELOPER 00:00:31] [INFO 00:00:31] addressbook: inactive [INFO 00:00:31] calendar: inactive [INFO 00:00:31] calendar+todo: inactive [INFO 00:00:31] eas_contact: inactive [INFO 00:00:31] eas_event: inactive [INFO 00:00:31] eas_memo: inactive [INFO 00:00:31] eas_task: inactive [INFO 00:00:31] eds_event: inactive [INFO 00:00:31] eds_memo: inactive [INFO 00:00:31] eds_task: inactive [INFO 00:00:31] file_calendar+todo: inactive [INFO 00:00:31] file_contact: inactive [INFO 00:00:31] file_event: inactive [INFO 00:00:31] file_task: inactive [INFO 00:00:31] kde_contact: inactive [INFO 00:00:31] kde_event: inactive [INFO 00:00:31] kde_memo: inactive [INFO 00:00:31] kde_task: inactive [INFO 00:00:31] memo: inactive [INFO 00:00:31] todo: inactive [DEBUG 00:00:31] checking password property 'password' in config 'edsdav_2@client-test-edsdav-2' with user identity 'user01' [DEBUG 00:00:31] loading password from keyring with key user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:00:31] not using KWallet [DEBUG 00:00:31] sync password for edsdav_2@client-test-edsdav-2: loaded password from GNOME keyring using user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:00:31] checking password property 'databasePassword' in datastore 'eds_contact' of config 'edsdav_2@client-test-edsdav-2' with user identity '' [DEBUG 00:00:31] sync is starting, catch signals [DEBUG 00:00:31] SuspendFlags: (re)activating, currently inactive [DEBUG 00:00:31] SuspendFlags: activating signal handler(s) with fds 38->37 [DEBUG 00:00:31] SuspendFlags: catch signal 15 [DEBUG 00:00:31] ready to sync [DEBUG 00:00:32] CreateContext SyncEvolution//eds_contact => 0 [DEBUG 00:00:32] Module_Version = 01090100 [DEBUG 00:00:32] Module_Capabilities: [DEBUG 00:00:32] PLATFORM:Linux [DEBUG 00:00:32] DLL:true [DEBUG 00:00:32] MINVERSION:V1.0.6.0 [DEBUG 00:00:32] MANUFACTURER:SyncEvolution [DEBUG 00:00:32] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:00:32] plugin_datastore_str:no [DEBUG 00:00:32] plugin_datastore_key:yes [DEBUG 00:00:32] ITEM_AS_KEY:yes [DEBUG 00:00:32] plugin_datablob:no [DEBUG 00:00:32] eds_contact: Module_PluginParams [DEBUG 00:00:32] eds_contact: Engine=01090100 [DEBUG 00:00:32] eds_contact: [DEBUG 00:00:32] Module_Capabilities: [DEBUG 00:00:32] PLATFORM:Linux [DEBUG 00:00:32] DLL:true [DEBUG 00:00:32] MINVERSION:V1.0.6.0 [DEBUG 00:00:32] MANUFACTURER:SyncEvolution [DEBUG 00:00:32] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:00:32] plugin_datastore_str:no [DEBUG 00:00:32] plugin_datastore_key:yes [DEBUG 00:00:32] ITEM_AS_KEY:yes [DEBUG 00:00:32] plugin_datablob:no [DEBUG 00:00:32] copying syncURL, username, password to Synthesis engine [DEBUG 00:00:32] using plain username/password for user01 [DEBUG 00:00:32] eds_contact: total number of items received 0 [INFO 00:00:48] eds_contact: starting first time sync from client (peer is server) [DEBUG 00:00:48] reading: set read-ahead based on sync mode refresh-from-local [DEBUG 00:00:48] eds_contact: reading: set order 'all', 0 luids [DEBUG 00:00:48] eds_contact: 'eds_contact' dev='anydevice' usr='singleuser' err=0 [DEBUG 00:00:48] eds_contact: FilterSupport staticfilter: [DEBUG 00:00:48] eds_contact: dynamicfilter: [DEBUG 00:00:48] eds_contact: invisiblefilter: [DEBUG 00:00:48] eds_contact: ContextSupport ReadNextItem:allfields [DEBUG 00:00:48] eds_contact: [DEBUG 00:00:48] eds_contact: slow sync or testing, do full item scan to detect changes [DEBUG 00:00:48] eds_contact: StartDataRead last='' resume='' res=0 [DEBUG 00:00:48] eds_contact: ReadNextItemAsKey aStatus=0 aID=((null),(null)) res=0 [DEBUG 00:00:48] eds_contact: EndDataRead res=0 [DEBUG 00:00:48] eds_contact: StartDataWrite [DEBUG 00:00:48] eds_contact: total number of items received 0 [INFO 00:00:50] eds_contact: started [DEBUG 00:00:50] eds_contact: total number of items received 0 [DEBUG 00:00:50] eds_contact: EndDataWrite COMMIT '1' res=0 [DEBUG 00:00:50] eds_contact: DeleteContext [INFO 00:00:50] eds_contact: first time sync done successfully [DEBUG 00:00:50] closing session [DEBUG 00:00:50] session closed [DEBUG 00:00:50] SuspendFlags: deactivating fds 38->37 [DEBUG 00:00:50] SuspendFlags: close m_receiverFD 37 [DEBUG 00:00:50] SuspendFlags: close m_senderFD 38 [DEBUG 00:00:50] SuspendFlags: done with deactivation [DEBUG 00:00:50] Module_DeleteContext eds_contact [INFO 00:00:50] sync report: [INFO 00:00:50] +---------------|-----------------------|-----------------------|-CON-+ [INFO 00:00:50] | | LOCAL | REMOTE | FLI | [INFO 00:00:50] | Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS | [INFO 00:00:50] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:00:50] | eds_contact | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | [INFO 00:00:50] | refresh-from-local, 0 KB sent by client, 0 KB received | [INFO 00:00:50] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:00:50] | start Fri Jan 5 19:13:01 2018, duration 0:22min | [INFO 00:00:50] | synchronization completed successfully | [INFO 00:00:50] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:00:50] ----------|--------CLIENT---------|--------SERVER---------| [INFO 00:00:50] | NEW | MOD | DEL | NEW | MOD | DEL | [INFO 00:00:50] ----------|-----------------------------------------------| [INFO 00:00:50] Expected | 0 | 0 | 0 | 0 | 0 | -1 | [INFO 00:00:50] Expected sync mode: refresh-from-local [INFO 00:00:50] Expected cycles: 1 [INFO 00:00:50] [DEBUG 00:00:50] ClientTest.cpp:8283: starting CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:00:50] ClientTest.cpp:8283: ending CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:00:50] ClientTest.cpp:8284: starting CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:00:50] ClientTest.cpp:8284: ending CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:00:50] Checking sync source eds_contact... [DEBUG 00:00:50] ClientTest.cpp:8293: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:00:50] ClientTest.cpp:8293: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:00:50] ClientTest.cpp:8305: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:00:50] ClientTest.cpp:8305: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:00:50] ClientTest.cpp:8308: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:00:50] ClientTest.cpp:8308: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:00:50] ClientTest.cpp:8319: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:00:50] ClientTest.cpp:8319: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:00:50] ClientTest.cpp:8322: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:00:50] ClientTest.cpp:8322: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:00:50] ClientTest.cpp:8328: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:50] ClientTest.cpp:8328: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:50] ClientTest.cpp:8334: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:50] ClientTest.cpp:8334: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:50] ClientTest.cpp:8340: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:50] ClientTest.cpp:8340: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:50] ClientTest.cpp:8347: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:50] ClientTest.cpp:8347: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:50] ClientTest.cpp:8353: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:50] ClientTest.cpp:8353: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:00:50] Done with checking sync report. [DEBUG 00:00:50] ClientTest.cpp:6460: ending res = client.doSync(sourceArray, logname, options) [DEBUG 00:00:50] ClientTest.cpp:6465: starting postSync(res, logname) [DEBUG 00:00:50] ClientTest.cpp:6465: ending postSync(res, logname) [DEBUG 00:00:50] ClientTest.cpp:3117: ending doSync(logPrefix, options) [DEBUG 00:00:50] ClientTest.cpp:3138: starting allSourcesInsert() [DEBUG 00:00:50] ClientTest.cpp:6476: starting source_pair.second->doInsert(withUID) [DEBUG 00:00:50] ClientTest.cpp:1178: starting CPPUNIT_ASSERT(!config.m_insertItem.empty()) [DEBUG 00:00:50] ClientTest.cpp:1178: ending CPPUNIT_ASSERT(!config.m_insertItem.empty()) [DEBUG 00:00:50] ClientTest.cpp:1179: starting CPPUNIT_ASSERT(!config.m_createSourceA.empty()) [DEBUG 00:00:50] ClientTest.cpp:1179: ending CPPUNIT_ASSERT(!config.m_createSourceA.empty()) [DEBUG 00:00:50] ClientTest.cpp:1185: starting insert(createSourceA, item) [DEBUG 00:00:50] ClientTest.cpp:669: starting source.reset(createSource()) [DEBUG 00:00:50] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _1_A [DEBUG 00:00:50] overriding testing source eds_contact properties with the ones from config edsdav_1 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-1/peers/edsdav_1 [DEBUG 00:00:50] sync = two-way (set) [DEBUG 00:00:50] uri = addressbook (set) [DEBUG 00:00:50] backend = Evolution Address Book (set) [DEBUG 00:00:50] syncFormat = (default) [DEBUG 00:00:50] forceSyncFormat = 0 (default) [DEBUG 00:00:50] database = Test_eds_contact_1 (set) [DEBUG 00:00:50] databaseFormat = (default) [DEBUG 00:00:50] databaseUser = (default) [DEBUG 00:00:50] databasePassword = (default) [DEBUG 00:00:50] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:50] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:50] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:50] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:50] ClientTest.cpp:431: starting get()->open() [DEBUG 00:00:50] ClientTest.cpp:431: ending get()->open() [DEBUG 00:00:50] eds_contact: using full item scan to detect changes [DEBUG 00:00:50] ClientTest.cpp:669: ending source.reset(createSource()) [DEBUG 00:00:50] ClientTest.cpp:669: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:50] ClientTest.cpp:669: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:50] ClientTest.cpp:673: starting numItems = countItems(source.get()) [DEBUG 00:00:50] ClientTest.cpp:673: ending numItems = countItems(source.get()) [DEBUG 00:00:50] ClientTest.cpp:679: starting res = source->insertItemRaw("", mangled) [DEBUG 00:00:50] eds_contact: add operation #0: queueing for batched add [DEBUG 00:00:50] eds_contact: batch add of 1 contacts starting [DEBUG 00:00:50] eds_contact: waiting for 1 pending operations to complete [DEBUG 00:00:50] eds_contact: batch add of 1 contacts completed [DEBUG 00:00:50] eds_contact: add operation #0: completed: <<successfully>> [DEBUG 00:00:50] eds_contact: pending operations completed [DEBUG 00:00:50] eds_contact: add operation #0: checking operation: inserted [DEBUG 00:00:50] ClientTest.cpp:679: ending res = source->insertItemRaw("", mangled) [DEBUG 00:00:50] ClientTest.cpp:679: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:50] ClientTest.cpp:679: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:50] ClientTest.cpp:680: starting CPPUNIT_ASSERT(!res.m_luid.empty()) [DEBUG 00:00:50] ClientTest.cpp:680: ending CPPUNIT_ASSERT(!res.m_luid.empty()) [DEBUG 00:00:50] ClientTest.cpp:693: starting source.reset() [DEBUG 00:00:50] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:50] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:50] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:00:50] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:00:50] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:51] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:51] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:00:51] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:00:51] ClientTest.cpp:463: starting get()->close() [DEBUG 00:00:51] ClientTest.cpp:463: ending get()->close() [DEBUG 00:00:51] ClientTest.cpp:693: ending source.reset() [DEBUG 00:00:51] ClientTest.cpp:699: starting source.reset(createSource()) [DEBUG 00:00:51] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _1_A [DEBUG 00:00:51] overriding testing source eds_contact properties with the ones from config edsdav_1 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-1/peers/edsdav_1 [DEBUG 00:00:51] sync = two-way (set) [DEBUG 00:00:51] uri = addressbook (set) [DEBUG 00:00:51] backend = Evolution Address Book (set) [DEBUG 00:00:51] syncFormat = (default) [DEBUG 00:00:51] forceSyncFormat = 0 (default) [DEBUG 00:00:51] database = Test_eds_contact_1 (set) [DEBUG 00:00:51] databaseFormat = (default) [DEBUG 00:00:51] databaseUser = (default) [DEBUG 00:00:51] databasePassword = (default) [DEBUG 00:00:52] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:52] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:52] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:52] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:00:52] ClientTest.cpp:431: starting get()->open() [DEBUG 00:00:52] ClientTest.cpp:431: ending get()->open() [DEBUG 00:00:52] eds_contact: using full item scan to detect changes [DEBUG 00:00:52] ClientTest.cpp:699: ending source.reset(createSource()) [DEBUG 00:00:52] ClientTest.cpp:699: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:52] ClientTest.cpp:699: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:00:52] ClientTest.cpp:701: starting CPPUNIT_ASSERT_EQUAL((numItems + ((res.m_state == ITEM_REPLACED || res.m_state == ITEM_MERGED || updated) ? 0 : 1)),(countItems(source.get()))) [DEBUG 00:00:52] ClientTest.cpp:701: ending CPPUNIT_ASSERT_EQUAL((numItems + ((res.m_state == ITEM_REPLACED || res.m_state == ITEM_MERGED || updated) ? 0 : 1)),(countItems(source.get()))) [DEBUG 00:00:52] ClientTest.cpp:702: starting CPPUNIT_ASSERT_EQUAL((0),(countNewItems(source.get()))) [DEBUG 00:00:52] ClientTest.cpp:702: ending CPPUNIT_ASSERT_EQUAL((0),(countNewItems(source.get()))) [DEBUG 00:00:52] ClientTest.cpp:703: starting CPPUNIT_ASSERT_EQUAL((0),(countUpdatedItems(source.get()))) [DEBUG 00:00:52] ClientTest.cpp:703: ending CPPUNIT_ASSERT_EQUAL((0),(countUpdatedItems(source.get()))) [DEBUG 00:00:52] ClientTest.cpp:704: starting CPPUNIT_ASSERT_EQUAL((0),(countDeletedItems(source.get()))) [DEBUG 00:00:52] ClientTest.cpp:704: ending CPPUNIT_ASSERT_EQUAL((0),(countDeletedItems(source.get()))) [DEBUG 00:00:52] ClientTest.cpp:391: starting reset(__null) [DEBUG 00:00:52] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:00:52] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:00:52] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:00:52] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:00:52] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:52] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:00:52] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:00:52] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:00:52] ClientTest.cpp:463: starting get()->close() [DEBUG 00:00:52] ClientTest.cpp:463: ending get()->close() [DEBUG 00:00:52] ClientTest.cpp:391: ending reset(__null) [DEBUG 00:00:52] ClientTest.cpp:1185: ending insert(createSourceA, item) [DEBUG 00:00:52] ClientTest.cpp:6476: ending source_pair.second->doInsert(withUID) [DEBUG 00:00:52] ClientTest.cpp:3138: ending allSourcesInsert() [DEBUG 00:00:52] ClientTest.cpp:3139: starting doSync(logPrefix, options) [DEBUG 00:00:52] 3. starting Client_Sync_eds_contact_testUpdate.copy.send.client.A with sync mode two-way [DEBUG 00:00:52] ClientTest.cpp:6460: starting res = client.doSync(sourceArray, logname, options) [DEBUG 00:00:52] log path -> /data/runtests/work/testing-amd64/home/edsdav/cache/syncevolution, No such file or directory [DEBUG 00:00:52] log path -> Client_Sync_eds_contact_testUpdate.copy.send.client.A, No such file or directory [DEBUG 00:00:52] log path -> Client_Sync_eds_contact_testUpdate.copy.send.client.A, No such file or directory [DEBUG 00:00:52] checking log dir Client_Sync_eds_contact_testUpdate.copy.send.client.A [DEBUG 00:00:52] logfile: Client_Sync_eds_contact_testUpdate.copy.send.client.A/syncevolution-log.html [DEVELOPER 00:00:54] SyncML server account: user01 [DEVELOPER 00:00:54] client: SyncEvolution 1.5.3 for workstation [DEVELOPER 00:00:54] device ID: client-edsdav_1 [DEVELOPER 00:00:54] [DEVELOPER 00:00:54] [INFO 00:00:54] addressbook: inactive [INFO 00:00:54] calendar: inactive [INFO 00:00:54] calendar+todo: inactive [INFO 00:00:54] eas_contact: inactive [INFO 00:00:54] eas_event: inactive [INFO 00:00:54] eas_memo: inactive [INFO 00:00:54] eas_task: inactive [INFO 00:00:54] eds_event: inactive [INFO 00:00:54] eds_memo: inactive [INFO 00:00:54] eds_task: inactive [INFO 00:00:54] file_calendar+todo: inactive [INFO 00:00:54] file_contact: inactive [INFO 00:00:54] file_event: inactive [INFO 00:00:54] file_task: inactive [INFO 00:00:54] kde_contact: inactive [INFO 00:00:54] kde_event: inactive [INFO 00:00:54] kde_memo: inactive [INFO 00:00:54] kde_task: inactive [INFO 00:00:54] memo: inactive [INFO 00:00:54] todo: inactive [DEBUG 00:00:54] checking password property 'password' in config 'edsdav_1@client-test-edsdav-1' with user identity 'user01' [DEBUG 00:00:54] loading password from keyring with key user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:00:54] not using KWallet [DEBUG 00:00:54] sync password for edsdav_1@client-test-edsdav-1: loaded password from GNOME keyring using user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:00:54] checking password property 'databasePassword' in datastore 'eds_contact' of config 'edsdav_1@client-test-edsdav-1' with user identity '' [DEBUG 00:00:54] sync is starting, catch signals [DEBUG 00:00:54] SuspendFlags: (re)activating, currently inactive [DEBUG 00:00:54] SuspendFlags: activating signal handler(s) with fds 38->37 [DEBUG 00:00:54] SuspendFlags: catch signal 15 [DEBUG 00:00:54] ready to sync [DEBUG 00:00:54] CreateContext SyncEvolution//eds_contact => 0 [DEBUG 00:00:54] Module_Version = 01090100 [DEBUG 00:00:54] Module_Capabilities: [DEBUG 00:00:54] PLATFORM:Linux [DEBUG 00:00:54] DLL:true [DEBUG 00:00:54] MINVERSION:V1.0.6.0 [DEBUG 00:00:54] MANUFACTURER:SyncEvolution [DEBUG 00:00:54] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:00:54] plugin_datastore_str:no [DEBUG 00:00:54] plugin_datastore_key:yes [DEBUG 00:00:54] ITEM_AS_KEY:yes [DEBUG 00:00:54] plugin_datablob:no [DEBUG 00:00:54] eds_contact: Module_PluginParams [DEBUG 00:00:54] eds_contact: Engine=01090100 [DEBUG 00:00:54] eds_contact: [DEBUG 00:00:54] Module_Capabilities: [DEBUG 00:00:54] PLATFORM:Linux [DEBUG 00:00:54] DLL:true [DEBUG 00:00:54] MINVERSION:V1.0.6.0 [DEBUG 00:00:54] MANUFACTURER:SyncEvolution [DEBUG 00:00:54] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:00:54] plugin_datastore_str:no [DEBUG 00:00:54] plugin_datastore_key:yes [DEBUG 00:00:54] ITEM_AS_KEY:yes [DEBUG 00:00:54] plugin_datablob:no [DEBUG 00:00:54] copying syncURL, username, password to Synthesis engine [DEBUG 00:00:54] using plain username/password for user01 [DEBUG 00:00:55] eds_contact: total number of items received 0 [INFO 00:01:11] eds_contact: starting normal sync, two-way (peer is server) [DEBUG 00:01:11] reading: set read-ahead based on sync mode two-way [DEBUG 00:01:11] eds_contact: reading: set order 'changed', 0 luids [DEBUG 00:01:11] eds_contact: 'eds_contact' dev='anydevice' usr='singleuser' err=0 [DEBUG 00:01:11] eds_contact: FilterSupport staticfilter: [DEBUG 00:01:11] eds_contact: dynamicfilter: [DEBUG 00:01:11] eds_contact: invisiblefilter: [DEBUG 00:01:11] eds_contact: using full item scan to detect changes [DEBUG 00:01:11] eds_contact: StartDataRead last='1' resume='1' res=0 [DEBUG 00:01:11] eds_contact: ReadNextItemAsKey aStatus=1 aID=(pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f,(null)) res=0 [DEBUG 00:01:11] eds_contact: ReadNextItemAsKey aStatus=0 aID=((null),(null)) res=0 [DEBUG 00:01:11] eds_contact: EndDataRead res=0 [DEBUG 00:01:11] eds_contact: reading: getting contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:11] eds_contact: reading: must read contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:11] eds_contact: reading: started contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) [DEBUG 00:01:11] eds_contact: reading: active cache pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) [DEBUG 00:01:11] eds_contact: reading: in running cache [DEBUG 00:01:11] eds_contact: reading: contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) finished: <<successful>> [DEBUG 00:01:11] eds_contact: reading: contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) got pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:11] eds_contact: reading: in cache, available [DEBUG 00:01:11] eds_contact: reading: continue after contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:11] eds_contact: reading: read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f: <<okay>> [DEBUG 00:01:11] eds_contact: requested 1, retrieved 1 from DB in 1 queries, misses 0/1 (0%), stalls 1 [DEBUG 00:01:11] eds_contact: ReadItemAsKey aID=(pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f,) res=0 [DEBUG 00:01:11] eds_contact: StartDataWrite [DEBUG 00:01:11] eds_contact: total number of items received 0 [INFO 00:01:11] eds_contact: sent 1/1 [INFO 00:01:13] eds_contact: started [DEBUG 00:01:13] eds_contact: total number of items received 0 [DEBUG 00:01:14] eds_contact: EndDataWrite COMMIT '1' res=0 [DEBUG 00:01:14] eds_contact: DeleteContext [INFO 00:01:14] eds_contact: normal sync done successfully [DEBUG 00:01:14] closing session [DEBUG 00:01:14] session closed [DEBUG 00:01:14] SuspendFlags: deactivating fds 38->37 [DEBUG 00:01:14] SuspendFlags: close m_receiverFD 37 [DEBUG 00:01:14] SuspendFlags: close m_senderFD 38 [DEBUG 00:01:14] SuspendFlags: done with deactivation [DEBUG 00:01:14] Module_DeleteContext eds_contact [INFO 00:01:14] sync report: [INFO 00:01:14] +---------------|-----------------------|-----------------------|-CON-+ [INFO 00:01:14] | | LOCAL | REMOTE | FLI | [INFO 00:01:14] | Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS | [INFO 00:01:14] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:01:14] | eds_contact | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | [INFO 00:01:14] | two-way, 0 KB sent by client, 0 KB received | [INFO 00:01:14] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:01:14] | start Fri Jan 5 19:13:24 2018, duration 0:23min | [INFO 00:01:14] | synchronization completed successfully | [INFO 00:01:14] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:01:14] ----------|--------CLIENT---------|--------SERVER---------| [INFO 00:01:14] | NEW | MOD | DEL | NEW | MOD | DEL | [INFO 00:01:14] ----------|-----------------------------------------------| [INFO 00:01:14] Expected | 0 | 0 | 0 | 1 | 0 | 0 | [INFO 00:01:14] Expected sync mode: two-way [INFO 00:01:14] Expected cycles: 1 [INFO 00:01:14] [DEBUG 00:01:14] ClientTest.cpp:8283: starting CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:01:14] ClientTest.cpp:8283: ending CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:01:14] ClientTest.cpp:8284: starting CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:01:14] ClientTest.cpp:8284: ending CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:01:14] Checking sync source eds_contact... [DEBUG 00:01:14] ClientTest.cpp:8293: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:01:14] ClientTest.cpp:8293: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:01:14] ClientTest.cpp:8305: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:01:14] ClientTest.cpp:8305: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:01:14] ClientTest.cpp:8308: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:01:14] ClientTest.cpp:8308: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:01:14] ClientTest.cpp:8319: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:01:14] ClientTest.cpp:8319: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:01:14] ClientTest.cpp:8322: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:01:14] ClientTest.cpp:8322: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:01:14] ClientTest.cpp:8328: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8328: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8334: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8334: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8340: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8340: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8347: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8347: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8353: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8353: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8359: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(serverDeleted),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] ClientTest.cpp:8359: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(serverDeleted),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:14] Done with checking sync report. [DEBUG 00:01:14] ClientTest.cpp:6460: ending res = client.doSync(sourceArray, logname, options) [DEBUG 00:01:14] ClientTest.cpp:6465: starting postSync(res, logname) [DEBUG 00:01:14] ClientTest.cpp:6465: ending postSync(res, logname) [DEBUG 00:01:14] ClientTest.cpp:3139: ending doSync(logPrefix, options) [DEBUG 00:01:14] ClientTest.cpp:3145: starting doSync(logPrefix, options) [DEBUG 00:01:14] 4. starting Client_Sync_eds_contact_testUpdate.recv.client.B with sync mode two-way [DEBUG 00:01:14] ClientTest.cpp:6460: starting res = client.doSync(sourceArray, logname, options) [DEBUG 00:01:14] log path -> /data/runtests/work/testing-amd64/home/edsdav/cache/syncevolution, No such file or directory [DEBUG 00:01:14] log path -> Client_Sync_eds_contact_testUpdate.recv.client.B, No such file or directory [DEBUG 00:01:14] log path -> Client_Sync_eds_contact_testUpdate.recv.client.B, No such file or directory [DEBUG 00:01:14] checking log dir Client_Sync_eds_contact_testUpdate.recv.client.B [DEBUG 00:01:14] logfile: Client_Sync_eds_contact_testUpdate.recv.client.B/syncevolution-log.html [DEVELOPER 00:01:16] SyncML server account: user01 [DEVELOPER 00:01:16] client: SyncEvolution 1.5.3 for workstation [DEVELOPER 00:01:16] device ID: client-edsdav_2 [DEVELOPER 00:01:16] [DEVELOPER 00:01:16] [INFO 00:01:16] addressbook: inactive [INFO 00:01:16] calendar: inactive [INFO 00:01:16] calendar+todo: inactive [INFO 00:01:16] eas_contact: inactive [INFO 00:01:16] eas_event: inactive [INFO 00:01:16] eas_memo: inactive [INFO 00:01:16] eas_task: inactive [INFO 00:01:16] eds_event: inactive [INFO 00:01:16] eds_memo: inactive [INFO 00:01:16] eds_task: inactive [INFO 00:01:16] file_calendar+todo: inactive [INFO 00:01:16] file_contact: inactive [INFO 00:01:16] file_event: inactive [INFO 00:01:16] file_task: inactive [INFO 00:01:16] kde_contact: inactive [INFO 00:01:16] kde_event: inactive [INFO 00:01:17] kde_memo: inactive [INFO 00:01:17] kde_task: inactive [INFO 00:01:17] memo: inactive [INFO 00:01:17] todo: inactive [DEBUG 00:01:17] checking password property 'password' in config 'edsdav_2@client-test-edsdav-2' with user identity 'user01' [DEBUG 00:01:17] loading password from keyring with key user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:01:17] not using KWallet [DEBUG 00:01:17] sync password for edsdav_2@client-test-edsdav-2: loaded password from GNOME keyring using user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:01:17] checking password property 'databasePassword' in datastore 'eds_contact' of config 'edsdav_2@client-test-edsdav-2' with user identity '' [DEBUG 00:01:17] sync is starting, catch signals [DEBUG 00:01:17] SuspendFlags: (re)activating, currently inactive [DEBUG 00:01:17] SuspendFlags: activating signal handler(s) with fds 38->37 [DEBUG 00:01:17] SuspendFlags: catch signal 15 [DEBUG 00:01:17] ready to sync [DEBUG 00:01:17] CreateContext SyncEvolution//eds_contact => 0 [DEBUG 00:01:17] Module_Version = 01090100 [DEBUG 00:01:17] Module_Capabilities: [DEBUG 00:01:17] PLATFORM:Linux [DEBUG 00:01:17] DLL:true [DEBUG 00:01:17] MINVERSION:V1.0.6.0 [DEBUG 00:01:17] MANUFACTURER:SyncEvolution [DEBUG 00:01:17] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:01:17] plugin_datastore_str:no [DEBUG 00:01:17] plugin_datastore_key:yes [DEBUG 00:01:17] ITEM_AS_KEY:yes [DEBUG 00:01:17] plugin_datablob:no [DEBUG 00:01:17] eds_contact: Module_PluginParams [DEBUG 00:01:17] eds_contact: Engine=01090100 [DEBUG 00:01:17] eds_contact: [DEBUG 00:01:17] Module_Capabilities: [DEBUG 00:01:17] PLATFORM:Linux [DEBUG 00:01:17] DLL:true [DEBUG 00:01:17] MINVERSION:V1.0.6.0 [DEBUG 00:01:17] MANUFACTURER:SyncEvolution [DEBUG 00:01:17] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:01:17] plugin_datastore_str:no [DEBUG 00:01:17] plugin_datastore_key:yes [DEBUG 00:01:17] ITEM_AS_KEY:yes [DEBUG 00:01:17] plugin_datablob:no [DEBUG 00:01:17] copying syncURL, username, password to Synthesis engine [DEBUG 00:01:17] using plain username/password for user01 [DEBUG 00:01:17] eds_contact: total number of items received 0 [INFO 00:01:33] eds_contact: starting normal sync, two-way (peer is server) [DEBUG 00:01:33] reading: set read-ahead based on sync mode two-way [DEBUG 00:01:33] eds_contact: reading: set order 'changed', 0 luids [DEBUG 00:01:33] eds_contact: 'eds_contact' dev='anydevice' usr='singleuser' err=0 [DEBUG 00:01:33] eds_contact: FilterSupport staticfilter: [DEBUG 00:01:33] eds_contact: dynamicfilter: [DEBUG 00:01:33] eds_contact: invisiblefilter: [DEBUG 00:01:33] eds_contact: using full item scan to detect changes [DEBUG 00:01:33] eds_contact: StartDataRead last='1' resume='1' res=0 [DEBUG 00:01:33] eds_contact: ReadNextItemAsKey aStatus=0 aID=((null),(null)) res=0 [DEBUG 00:01:33] eds_contact: EndDataRead res=0 [DEBUG 00:01:33] eds_contact: StartDataWrite [DEBUG 00:01:33] eds_contact: total number of items received 0 [INFO 00:01:35] eds_contact: started [INFO 00:01:35] eds_contact: adding "John Doe" [DEBUG 00:01:35] eds_contact: add operation #0: queueing for batched add [DEBUG 00:01:35] eds_contact: InsertItemAsKey res=1 [DEBUG 00:01:35] eds_contact: batch add of 1 contacts starting [DEBUG 00:01:35] eds_contact: waiting for 1 pending operations to complete [DEBUG 00:01:35] eds_contact: batch add of 1 contacts completed [DEBUG 00:01:35] eds_contact: add operation #0: completed: <<successfully>> [DEBUG 00:01:35] eds_contact: pending operations completed [DEBUG 00:01:35] eds_contact: add operation #0: checking operation: inserted [DEBUG 00:01:35] eds_contact: InsertItemAsKey res=0 [DEBUG 00:01:36] eds_contact: EndDataWrite COMMIT '1' res=0 [DEBUG 00:01:36] eds_contact: total number of items received 0 [INFO 00:01:36] eds_contact: received 2/1 [DEBUG 00:01:36] eds_contact: DeleteContext [INFO 00:01:36] eds_contact: normal sync done successfully [DEBUG 00:01:36] closing session [DEBUG 00:01:36] session closed [DEBUG 00:01:36] SuspendFlags: deactivating fds 38->37 [DEBUG 00:01:36] SuspendFlags: close m_receiverFD 37 [DEBUG 00:01:36] SuspendFlags: close m_senderFD 38 [DEBUG 00:01:36] SuspendFlags: done with deactivation [DEBUG 00:01:36] Module_DeleteContext eds_contact [INFO 00:01:36] sync report: [INFO 00:01:36] +---------------|-----------------------|-----------------------|-CON-+ [INFO 00:01:36] | | LOCAL | REMOTE | FLI | [INFO 00:01:36] | Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS | [INFO 00:01:36] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:01:36] | eds_contact | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | [INFO 00:01:36] | two-way, 0 KB sent by client, 0 KB received | [INFO 00:01:36] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:01:36] | start Fri Jan 5 19:13:47 2018, duration 0:22min | [INFO 00:01:36] | synchronization completed successfully | [INFO 00:01:36] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:01:36] ----------|--------CLIENT---------|--------SERVER---------| [INFO 00:01:36] | NEW | MOD | DEL | NEW | MOD | DEL | [INFO 00:01:36] ----------|-----------------------------------------------| [INFO 00:01:36] Expected | 1 | 0 | 0 | 0 | 0 | 0 | [INFO 00:01:36] Expected sync mode: two-way [INFO 00:01:36] Expected cycles: 1 [INFO 00:01:36] [DEBUG 00:01:36] ClientTest.cpp:8283: starting CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:01:36] ClientTest.cpp:8283: ending CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:01:36] ClientTest.cpp:8284: starting CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:01:36] ClientTest.cpp:8284: ending CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:01:36] Checking sync source eds_contact... [DEBUG 00:01:36] ClientTest.cpp:8293: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:01:36] ClientTest.cpp:8293: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:01:36] ClientTest.cpp:8305: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:01:36] ClientTest.cpp:8305: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:01:36] ClientTest.cpp:8308: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:01:36] ClientTest.cpp:8308: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:01:36] ClientTest.cpp:8319: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:01:36] ClientTest.cpp:8319: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:01:36] ClientTest.cpp:8322: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:01:36] ClientTest.cpp:8322: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:01:36] ClientTest.cpp:8328: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:36] ClientTest.cpp:8328: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:36] ClientTest.cpp:8334: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:36] ClientTest.cpp:8334: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:36] ClientTest.cpp:8340: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:36] ClientTest.cpp:8340: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:37] ClientTest.cpp:8347: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:37] ClientTest.cpp:8347: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:37] ClientTest.cpp:8353: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:37] ClientTest.cpp:8353: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:37] ClientTest.cpp:8359: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(serverDeleted),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:37] ClientTest.cpp:8359: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(serverDeleted),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:01:37] Done with checking sync report. [DEBUG 00:01:37] ClientTest.cpp:6460: ending res = client.doSync(sourceArray, logname, options) [DEBUG 00:01:37] ClientTest.cpp:6465: starting postSync(res, logname) [DEBUG 00:01:37] ClientTest.cpp:6465: ending postSync(res, logname) [DEBUG 00:01:37] ClientTest.cpp:3145: ending doSync(logPrefix, options) [DEBUG 00:01:37] ClientTest.cpp:3150: starting compareDatabases() [DEBUG 00:01:37] ClientTest.cpp:3065: starting CPPUNIT_ASSERT(accessClientB) [DEBUG 00:01:37] ClientTest.cpp:3065: ending CPPUNIT_ASSERT(accessClientB) [DEBUG 00:01:37] ClientTest.cpp:3070: starting copy.reset(it2->second->createSourceB()) [DEBUG 00:01:37] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _2_B [DEBUG 00:01:37] overriding testing source eds_contact properties with the ones from config edsdav_2 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-2/peers/edsdav_2 [DEBUG 00:01:37] sync = two-way (set) [DEBUG 00:01:37] uri = addressbook (set) [DEBUG 00:01:37] backend = Evolution Address Book (set) [DEBUG 00:01:37] syncFormat = (default) [DEBUG 00:01:37] forceSyncFormat = 0 (default) [DEBUG 00:01:37] database = Test_eds_contact_2 (set) [DEBUG 00:01:37] databaseFormat = (default) [DEBUG 00:01:37] databaseUser = (default) [DEBUG 00:01:37] databasePassword = (default) [DEBUG 00:01:37] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:01:37] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:01:37] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:01:37] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:01:37] ClientTest.cpp:431: starting get()->open() [DEBUG 00:01:37] ClientTest.cpp:431: ending get()->open() [DEBUG 00:01:37] eds_contact: slow sync or testing, do full item scan to detect changes [DEBUG 00:01:37] ClientTest.cpp:3070: ending copy.reset(it2->second->createSourceB()) [DEBUG 00:01:37] ClientTest.cpp:3070: starting CPPUNIT_ASSERT((copy.get())) [DEBUG 00:01:37] ClientTest.cpp:3070: ending CPPUNIT_ASSERT((copy.get())) [DEBUG 00:01:37] ClientTest.cpp:846: starting CPPUNIT_ASSERT(config.m_dump) [DEBUG 00:01:37] ClientTest.cpp:846: ending CPPUNIT_ASSERT(config.m_dump) [DEBUG 00:01:37] ClientTest.cpp:856: starting source.reset(createSourceA()) [DEBUG 00:01:37] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _1_A [DEBUG 00:01:37] overriding testing source eds_contact properties with the ones from config edsdav_1 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-1/peers/edsdav_1 [DEBUG 00:01:37] sync = two-way (set) [DEBUG 00:01:37] uri = addressbook (set) [DEBUG 00:01:37] backend = Evolution Address Book (set) [DEBUG 00:01:37] syncFormat = (default) [DEBUG 00:01:37] forceSyncFormat = 0 (default) [DEBUG 00:01:37] database = Test_eds_contact_1 (set) [DEBUG 00:01:37] databaseFormat = (default) [DEBUG 00:01:37] databaseUser = (default) [DEBUG 00:01:37] databasePassword = (default) [DEBUG 00:01:37] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:01:37] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:01:37] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:01:37] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:01:37] ClientTest.cpp:431: starting get()->open() [DEBUG 00:01:37] ClientTest.cpp:431: ending get()->open() [DEBUG 00:01:37] eds_contact: using full item scan to detect changes [DEBUG 00:01:37] ClientTest.cpp:856: ending source.reset(createSourceA()) [DEBUG 00:01:37] ClientTest.cpp:856: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:37] ClientTest.cpp:856: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:37] ClientTest.cpp:857: starting CPPUNIT_ASSERT_EQUAL((0),(config.m_dump(client, *source.get(), sourceFile))) [DEBUG 00:01:37] ClientTest.cpp:6698: starting CPPUNIT_ASSERT(source.getOperations().m_backupData) [DEBUG 00:01:37] ClientTest.cpp:6698: ending CPPUNIT_ASSERT(source.getOperations().m_backupData) [DEBUG 00:01:37] eds_contact: reading: set order 'selected', 1 luids [DEBUG 00:01:37] eds_contact: reading: getting contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:37] eds_contact: reading: must read contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:37] eds_contact: reading: started contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) [DEBUG 00:01:37] eds_contact: reading: active cache pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) [DEBUG 00:01:37] eds_contact: reading: in running cache [DEBUG 00:01:37] eds_contact: reading: contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) finished: <<successful>> [DEBUG 00:01:37] eds_contact: reading: contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) got pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:37] eds_contact: reading: in cache, available [DEBUG 00:01:37] eds_contact: reading: continue after contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:37] eds_contact: reading: read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f: <<okay>> [DEBUG 00:01:37] eds_contact: requested 1, retrieved 1 from DB in 1 queries, misses 0/1 (0%), stalls 1 [DEBUG 00:01:37] eds_contact: reading: set order 'none', 0 luids [DEBUG 00:01:37] ClientTest.cpp:857: ending CPPUNIT_ASSERT_EQUAL((0),(config.m_dump(client, *source.get(), sourceFile))) [DEBUG 00:01:37] ClientTest.cpp:857: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:37] ClientTest.cpp:857: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:37] ClientTest.cpp:858: starting source.reset() [DEBUG 00:01:37] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:01:37] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:01:37] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:01:37] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:01:37] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:01:37] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:01:37] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:01:37] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:01:37] ClientTest.cpp:463: starting get()->close() [DEBUG 00:01:37] ClientTest.cpp:463: ending get()->close() [DEBUG 00:01:37] ClientTest.cpp:858: ending source.reset() [DEBUG 00:01:37] ClientTest.cpp:391: starting reset(__null) [DEBUG 00:01:37] ClientTest.cpp:391: ending reset(__null) [DEBUG 00:01:37] ClientTest.cpp:863: starting CPPUNIT_ASSERT_EQUAL((0),(config.m_dump(client, copy, copyFile))) [DEBUG 00:01:37] ClientTest.cpp:6698: starting CPPUNIT_ASSERT(source.getOperations().m_backupData) [DEBUG 00:01:37] ClientTest.cpp:6698: ending CPPUNIT_ASSERT(source.getOperations().m_backupData) [DEBUG 00:01:37] eds_contact: reading: set order 'selected', 1 luids [DEBUG 00:01:37] eds_contact: reading: getting contact pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:01:37] eds_contact: reading: must read contact pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:01:37] eds_contact: reading: started contact read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) [DEBUG 00:01:37] eds_contact: reading: active cache pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) [DEBUG 00:01:37] eds_contact: reading: in running cache [DEBUG 00:01:37] eds_contact: reading: contact read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) finished: <<successful>> [DEBUG 00:01:37] eds_contact: reading: contact read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) got pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:01:37] eds_contact: reading: in cache, available [DEBUG 00:01:37] eds_contact: reading: continue after contact pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:01:37] eds_contact: reading: read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4: <<okay>> [DEBUG 00:01:37] eds_contact: requested 1, retrieved 1 from DB in 1 queries, misses 0/1 (0%), stalls 1 [DEBUG 00:01:37] eds_contact: reading: set order 'none', 0 luids [DEBUG 00:01:37] ClientTest.cpp:863: ending CPPUNIT_ASSERT_EQUAL((0),(config.m_dump(client, copy, copyFile))) [DEBUG 00:01:37] ClientTest.cpp:871: starting equal = config.m_compare(client, refFile.c_str(), actualFile.c_str()) [DEBUG 00:01:37] ClientTest.cpp:871: ending equal = config.m_compare(client, refFile.c_str(), actualFile.c_str()) [DEBUG 00:01:37] ClientTest.cpp:872: starting CPPUNIT_ASSERT(!raiseAssert || equal) [DEBUG 00:01:37] ClientTest.cpp:872: ending CPPUNIT_ASSERT(!raiseAssert || equal) [DEBUG 00:01:37] ClientTest.cpp:3084: starting copy.reset() [DEBUG 00:01:37] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:01:37] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:01:37] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:01:37] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:01:37] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:01:37] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:01:37] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:01:37] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:01:37] ClientTest.cpp:463: starting get()->close() [DEBUG 00:01:37] ClientTest.cpp:463: ending get()->close() [DEBUG 00:01:37] ClientTest.cpp:3084: ending copy.reset() [DEBUG 00:01:37] ClientTest.cpp:391: starting reset(__null) [DEBUG 00:01:37] ClientTest.cpp:391: ending reset(__null) [DEBUG 00:01:37] ClientTest.cpp:3086: starting CPPUNIT_ASSERT(it1 == sources.end()) [DEBUG 00:01:37] ClientTest.cpp:3086: ending CPPUNIT_ASSERT(it1 == sources.end()) [DEBUG 00:01:37] ClientTest.cpp:3087: starting CPPUNIT_ASSERT(it2 == accessClientB->sources.end()) [DEBUG 00:01:37] ClientTest.cpp:3087: ending CPPUNIT_ASSERT(it2 == accessClientB->sources.end()) [DEBUG 00:01:37] ClientTest.cpp:3089: starting CPPUNIT_ASSERT(!raiseAssert || equal) [DEBUG 00:01:37] ClientTest.cpp:3089: ending CPPUNIT_ASSERT(!raiseAssert || equal) [DEBUG 00:01:37] ClientTest.cpp:3150: ending compareDatabases() [DEBUG 00:01:37] ClientTest.cpp:3829: ending doCopy() [DEBUG 00:01:37] ClientTest.cpp:3832: starting it->second->update(it->second->createSourceA, it->second->config.m_updateItem) [DEBUG 00:01:37] ClientTest.cpp:748: starting CPPUNIT_ASSERT(createSource.createSource) [DEBUG 00:01:37] ClientTest.cpp:748: ending CPPUNIT_ASSERT(createSource.createSource) [DEBUG 00:01:37] ClientTest.cpp:754: starting source.reset(createSource()) [DEBUG 00:01:37] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _1_A [DEBUG 00:01:38] overriding testing source eds_contact properties with the ones from config edsdav_1 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-1/peers/edsdav_1 [DEBUG 00:01:38] sync = two-way (set) [DEBUG 00:01:38] uri = addressbook (set) [DEBUG 00:01:38] backend = Evolution Address Book (set) [DEBUG 00:01:38] syncFormat = (default) [DEBUG 00:01:38] forceSyncFormat = 0 (default) [DEBUG 00:01:38] database = Test_eds_contact_1 (set) [DEBUG 00:01:38] databaseFormat = (default) [DEBUG 00:01:38] databaseUser = (default) [DEBUG 00:01:38] databasePassword = (default) [DEBUG 00:01:38] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:01:38] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:01:38] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:01:38] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:01:38] ClientTest.cpp:431: starting get()->open() [DEBUG 00:01:38] ClientTest.cpp:431: ending get()->open() [DEBUG 00:01:38] eds_contact: using full item scan to detect changes [DEBUG 00:01:38] ClientTest.cpp:754: ending source.reset(createSource()) [DEBUG 00:01:38] ClientTest.cpp:754: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:38] ClientTest.cpp:754: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:38] ClientTest.cpp:758: starting it = source->getAllItems().begin() [DEBUG 00:01:38] ClientTest.cpp:758: ending it = source->getAllItems().begin() [DEBUG 00:01:38] ClientTest.cpp:758: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:38] ClientTest.cpp:758: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:38] ClientTest.cpp:759: starting CPPUNIT_ASSERT(it != source->getAllItems().end()) [DEBUG 00:01:38] ClientTest.cpp:759: ending CPPUNIT_ASSERT(it != source->getAllItems().end()) [DEBUG 00:01:38] ClientTest.cpp:763: starting res = source->insertItemRaw(luid, mangled) [DEBUG 00:01:38] eds_contact: insert pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f operation #0: queueing for batched update [DEBUG 00:01:38] eds_contact: batch update of 1 contacts starting [DEBUG 00:01:38] eds_contact: waiting for 1 pending operations to complete [DEBUG 00:01:38] eds_contact: batch update of 1 contacts completed [DEBUG 00:01:38] eds_contact: insert pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f operation #0: completed: <<successfully>> [DEBUG 00:01:38] eds_contact: pending operations completed [DEBUG 00:01:38] eds_contact: insert pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f operation #0: checking operation: inserted [DEBUG 00:01:38] ClientTest.cpp:763: ending res = source->insertItemRaw(luid, mangled) [DEBUG 00:01:38] ClientTest.cpp:763: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:38] ClientTest.cpp:763: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:38] ClientTest.cpp:764: starting source.reset() [DEBUG 00:01:38] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:01:38] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:01:38] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:01:38] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:01:38] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:01:39] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:01:39] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:01:39] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:01:39] ClientTest.cpp:463: starting get()->close() [DEBUG 00:01:39] ClientTest.cpp:463: ending get()->close() [DEBUG 00:01:39] ClientTest.cpp:764: ending source.reset() [DEBUG 00:01:39] ClientTest.cpp:765: starting CPPUNIT_ASSERT_EQUAL((luid),(res.m_luid)) [DEBUG 00:01:39] ClientTest.cpp:765: ending CPPUNIT_ASSERT_EQUAL((luid),(res.m_luid)) [DEBUG 00:01:39] ClientTest.cpp:766: starting CPPUNIT_ASSERT_EQUAL((ITEM_OKAY),(res.m_state)) [DEBUG 00:01:39] ClientTest.cpp:766: ending CPPUNIT_ASSERT_EQUAL((ITEM_OKAY),(res.m_state)) [DEBUG 00:01:39] ClientTest.cpp:773: starting source.reset(createSource()) [DEBUG 00:01:39] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _1_A [DEBUG 00:01:39] overriding testing source eds_contact properties with the ones from config edsdav_1 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-1/peers/edsdav_1 [DEBUG 00:01:39] sync = two-way (set) [DEBUG 00:01:39] uri = addressbook (set) [DEBUG 00:01:39] backend = Evolution Address Book (set) [DEBUG 00:01:39] syncFormat = (default) [DEBUG 00:01:39] forceSyncFormat = 0 (default) [DEBUG 00:01:39] database = Test_eds_contact_1 (set) [DEBUG 00:01:39] databaseFormat = (default) [DEBUG 00:01:39] databaseUser = (default) [DEBUG 00:01:39] databasePassword = (default) [DEBUG 00:01:39] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:01:39] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:01:39] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:01:39] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:01:39] ClientTest.cpp:431: starting get()->open() [DEBUG 00:01:39] ClientTest.cpp:431: ending get()->open() [DEBUG 00:01:39] eds_contact: using full item scan to detect changes [DEBUG 00:01:39] ClientTest.cpp:773: ending source.reset(createSource()) [DEBUG 00:01:39] ClientTest.cpp:773: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:39] ClientTest.cpp:773: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:39] ClientTest.cpp:774: starting CPPUNIT_ASSERT_EQUAL((1),(countItems(source.get()))) [DEBUG 00:01:39] ClientTest.cpp:774: ending CPPUNIT_ASSERT_EQUAL((1),(countItems(source.get()))) [DEBUG 00:01:39] ClientTest.cpp:775: starting CPPUNIT_ASSERT_EQUAL((0),(countNewItems(source.get()))) [DEBUG 00:01:39] ClientTest.cpp:775: ending CPPUNIT_ASSERT_EQUAL((0),(countNewItems(source.get()))) [DEBUG 00:01:39] ClientTest.cpp:776: starting CPPUNIT_ASSERT_EQUAL((0),(countUpdatedItems(source.get()))) [DEBUG 00:01:39] ClientTest.cpp:776: ending CPPUNIT_ASSERT_EQUAL((0),(countUpdatedItems(source.get()))) [DEBUG 00:01:39] ClientTest.cpp:777: starting CPPUNIT_ASSERT_EQUAL((0),(countDeletedItems(source.get()))) [DEBUG 00:01:39] ClientTest.cpp:777: ending CPPUNIT_ASSERT_EQUAL((0),(countDeletedItems(source.get()))) [DEBUG 00:01:39] ClientTest.cpp:779: starting it = source->getAllItems().begin() [DEBUG 00:01:39] ClientTest.cpp:779: ending it = source->getAllItems().begin() [DEBUG 00:01:39] ClientTest.cpp:779: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:39] ClientTest.cpp:779: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:01:39] ClientTest.cpp:780: starting CPPUNIT_ASSERT(it != source->getAllItems().end()) [DEBUG 00:01:39] ClientTest.cpp:780: ending CPPUNIT_ASSERT(it != source->getAllItems().end()) [DEBUG 00:01:39] ClientTest.cpp:781: starting CPPUNIT_ASSERT_EQUAL((luid),(*it)) [DEBUG 00:01:39] ClientTest.cpp:781: ending CPPUNIT_ASSERT_EQUAL((luid),(*it)) [DEBUG 00:01:39] ClientTest.cpp:391: starting reset(__null) [DEBUG 00:01:39] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:01:39] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:01:39] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:01:39] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:01:39] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:01:39] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:01:39] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:01:39] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:01:39] ClientTest.cpp:463: starting get()->close() [DEBUG 00:01:39] ClientTest.cpp:463: ending get()->close() [DEBUG 00:01:39] ClientTest.cpp:391: ending reset(__null) [DEBUG 00:01:39] ClientTest.cpp:3832: ending it->second->update(it->second->createSourceA, it->second->config.m_updateItem) [DEBUG 00:01:39] ClientTest.cpp:3835: starting doSync(logPrefix, options) [DEBUG 00:01:39] 5. starting Client_Sync_eds_contact_testUpdate.update.client.A with sync mode two-way [DEBUG 00:01:39] ClientTest.cpp:6460: starting res = client.doSync(sourceArray, logname, options) [DEBUG 00:01:39] log path -> /data/runtests/work/testing-amd64/home/edsdav/cache/syncevolution, No such file or directory [DEBUG 00:01:39] log path -> Client_Sync_eds_contact_testUpdate.update.client.A, No such file or directory [DEBUG 00:01:39] log path -> Client_Sync_eds_contact_testUpdate.update.client.A, No such file or directory [DEBUG 00:01:39] checking log dir Client_Sync_eds_contact_testUpdate.update.client.A [DEBUG 00:01:39] logfile: Client_Sync_eds_contact_testUpdate.update.client.A/syncevolution-log.html [DEVELOPER 00:01:41] SyncML server account: user01 [DEVELOPER 00:01:41] client: SyncEvolution 1.5.3 for workstation [DEVELOPER 00:01:41] device ID: client-edsdav_1 [DEVELOPER 00:01:41] [DEVELOPER 00:01:41] [INFO 00:01:41] addressbook: inactive [INFO 00:01:41] calendar: inactive [INFO 00:01:41] calendar+todo: inactive [INFO 00:01:41] eas_contact: inactive [INFO 00:01:41] eas_event: inactive [INFO 00:01:41] eas_memo: inactive [INFO 00:01:41] eas_task: inactive [INFO 00:01:41] eds_event: inactive [INFO 00:01:41] eds_memo: inactive [INFO 00:01:41] eds_task: inactive [INFO 00:01:41] file_calendar+todo: inactive [INFO 00:01:41] file_contact: inactive [INFO 00:01:41] file_event: inactive [INFO 00:01:41] file_task: inactive [INFO 00:01:41] kde_contact: inactive [INFO 00:01:41] kde_event: inactive [INFO 00:01:41] kde_memo: inactive [INFO 00:01:41] kde_task: inactive [INFO 00:01:41] memo: inactive [INFO 00:01:41] todo: inactive [DEBUG 00:01:41] checking password property 'password' in config 'edsdav_1@client-test-edsdav-1' with user identity 'user01' [DEBUG 00:01:41] loading password from keyring with key user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:01:41] not using KWallet [DEBUG 00:01:41] sync password for edsdav_1@client-test-edsdav-1: loaded password from GNOME keyring using user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:01:41] checking password property 'databasePassword' in datastore 'eds_contact' of config 'edsdav_1@client-test-edsdav-1' with user identity '' [DEBUG 00:01:41] sync is starting, catch signals [DEBUG 00:01:41] SuspendFlags: (re)activating, currently inactive [DEBUG 00:01:41] SuspendFlags: activating signal handler(s) with fds 38->37 [DEBUG 00:01:41] SuspendFlags: catch signal 15 [DEBUG 00:01:41] ready to sync [DEBUG 00:01:42] CreateContext SyncEvolution//eds_contact => 0 [DEBUG 00:01:42] Module_Version = 01090100 [DEBUG 00:01:42] Module_Capabilities: [DEBUG 00:01:42] PLATFORM:Linux [DEBUG 00:01:42] DLL:true [DEBUG 00:01:42] MINVERSION:V1.0.6.0 [DEBUG 00:01:42] MANUFACTURER:SyncEvolution [DEBUG 00:01:42] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:01:42] plugin_datastore_str:no [DEBUG 00:01:42] plugin_datastore_key:yes [DEBUG 00:01:42] ITEM_AS_KEY:yes [DEBUG 00:01:42] plugin_datablob:no [DEBUG 00:01:42] eds_contact: Module_PluginParams [DEBUG 00:01:42] eds_contact: Engine=01090100 [DEBUG 00:01:42] eds_contact: [DEBUG 00:01:42] Module_Capabilities: [DEBUG 00:01:42] PLATFORM:Linux [DEBUG 00:01:42] DLL:true [DEBUG 00:01:42] MINVERSION:V1.0.6.0 [DEBUG 00:01:42] MANUFACTURER:SyncEvolution [DEBUG 00:01:42] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:01:42] plugin_datastore_str:no [DEBUG 00:01:42] plugin_datastore_key:yes [DEBUG 00:01:42] ITEM_AS_KEY:yes [DEBUG 00:01:42] plugin_datablob:no [DEBUG 00:01:42] copying syncURL, username, password to Synthesis engine [DEBUG 00:01:42] using plain username/password for user01 [DEBUG 00:01:42] eds_contact: total number of items received 0 [INFO 00:01:58] eds_contact: starting normal sync, two-way (peer is server) [DEBUG 00:01:58] reading: set read-ahead based on sync mode two-way [DEBUG 00:01:58] eds_contact: reading: set order 'changed', 0 luids [DEBUG 00:01:58] eds_contact: 'eds_contact' dev='anydevice' usr='singleuser' err=0 [DEBUG 00:01:58] eds_contact: FilterSupport staticfilter: [DEBUG 00:01:58] eds_contact: dynamicfilter: [DEBUG 00:01:58] eds_contact: invisiblefilter: [DEBUG 00:01:58] eds_contact: using full item scan to detect changes [DEBUG 00:01:58] eds_contact: StartDataRead last='1' resume='1' res=0 [DEBUG 00:01:58] eds_contact: ReadNextItemAsKey aStatus=1 aID=(pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f,(null)) res=0 [DEBUG 00:01:58] eds_contact: ReadNextItemAsKey aStatus=0 aID=((null),(null)) res=0 [DEBUG 00:01:58] eds_contact: EndDataRead res=0 [DEBUG 00:01:58] eds_contact: reading: getting contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:58] eds_contact: reading: must read contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:58] eds_contact: reading: started contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) [DEBUG 00:01:58] eds_contact: reading: active cache pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) [DEBUG 00:01:58] eds_contact: reading: in running cache [DEBUG 00:01:58] eds_contact: reading: contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) finished: <<successful>> [DEBUG 00:01:58] eds_contact: reading: contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) got pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:58] eds_contact: reading: in cache, available [DEBUG 00:01:58] eds_contact: reading: continue after contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:01:58] eds_contact: reading: read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f: <<okay>> [DEBUG 00:01:58] eds_contact: requested 1, retrieved 1 from DB in 1 queries, misses 0/1 (0%), stalls 1 [DEBUG 00:01:58] eds_contact: ReadItemAsKey aID=(pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f,) res=0 [DEBUG 00:01:58] eds_contact: StartDataWrite [DEBUG 00:01:58] eds_contact: total number of items received 0 [INFO 00:01:58] eds_contact: sent 1/1 [INFO 00:02:00] eds_contact: started [DEBUG 00:02:00] eds_contact: total number of items received 0 [DEBUG 00:02:01] eds_contact: EndDataWrite COMMIT '1' res=0 [DEBUG 00:02:01] eds_contact: DeleteContext [INFO 00:02:01] eds_contact: normal sync done successfully [DEBUG 00:02:01] closing session [DEBUG 00:02:01] session closed [DEBUG 00:02:01] SuspendFlags: deactivating fds 38->37 [DEBUG 00:02:01] SuspendFlags: close m_receiverFD 37 [DEBUG 00:02:01] SuspendFlags: close m_senderFD 38 [DEBUG 00:02:01] SuspendFlags: done with deactivation [DEBUG 00:02:01] Module_DeleteContext eds_contact [INFO 00:02:02] sync report: [INFO 00:02:02] +---------------|-----------------------|-----------------------|-CON-+ [INFO 00:02:02] | | LOCAL | REMOTE | FLI | [INFO 00:02:02] | Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS | [INFO 00:02:02] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:02:02] | eds_contact | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | [INFO 00:02:02] | two-way, 0 KB sent by client, 0 KB received | [INFO 00:02:02] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:02:02] | start Fri Jan 5 19:14:12 2018, duration 0:22min | [INFO 00:02:02] | synchronization completed successfully | [INFO 00:02:02] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:02:02] ----------|--------CLIENT---------|--------SERVER---------| [INFO 00:02:02] | NEW | MOD | DEL | NEW | MOD | DEL | [INFO 00:02:02] ----------|-----------------------------------------------| [INFO 00:02:02] Expected | 0 | 0 | 0 | 0 | 1 | 0 | [INFO 00:02:02] Expected sync mode: two-way [INFO 00:02:02] Expected cycles: 1 [INFO 00:02:02] [DEBUG 00:02:02] ClientTest.cpp:8283: starting CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:02:02] ClientTest.cpp:8283: ending CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:02:02] ClientTest.cpp:8284: starting CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:02:02] ClientTest.cpp:8284: ending CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:02:02] Checking sync source eds_contact... [DEBUG 00:02:02] ClientTest.cpp:8293: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:02:02] ClientTest.cpp:8293: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:02:02] ClientTest.cpp:8305: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:02:02] ClientTest.cpp:8305: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:02:02] ClientTest.cpp:8308: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:02:02] ClientTest.cpp:8308: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:02:02] ClientTest.cpp:8319: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:02:02] ClientTest.cpp:8319: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:02:02] ClientTest.cpp:8322: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:02:02] ClientTest.cpp:8322: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:02:02] ClientTest.cpp:8328: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8328: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8334: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8334: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8340: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8340: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8347: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8347: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8353: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8353: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8359: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(serverDeleted),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] ClientTest.cpp:8359: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(serverDeleted),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:02] Done with checking sync report. [DEBUG 00:02:02] ClientTest.cpp:6460: ending res = client.doSync(sourceArray, logname, options) [DEBUG 00:02:02] ClientTest.cpp:6465: starting postSync(res, logname) [DEBUG 00:02:02] ClientTest.cpp:6465: ending postSync(res, logname) [DEBUG 00:02:02] ClientTest.cpp:3835: ending doSync(logPrefix, options) [DEBUG 00:02:02] ClientTest.cpp:3839: starting doSync(logPrefix, options) [DEBUG 00:02:02] 6. starting Client_Sync_eds_contact_testUpdate.update.client.B with sync mode two-way [DEBUG 00:02:02] ClientTest.cpp:6460: starting res = client.doSync(sourceArray, logname, options) [DEBUG 00:02:02] log path -> /data/runtests/work/testing-amd64/home/edsdav/cache/syncevolution, No such file or directory [DEBUG 00:02:02] log path -> Client_Sync_eds_contact_testUpdate.update.client.B, No such file or directory [DEBUG 00:02:02] log path -> Client_Sync_eds_contact_testUpdate.update.client.B, No such file or directory [DEBUG 00:02:02] checking log dir Client_Sync_eds_contact_testUpdate.update.client.B [DEBUG 00:02:02] logfile: Client_Sync_eds_contact_testUpdate.update.client.B/syncevolution-log.html [DEVELOPER 00:02:03] SyncML server account: user01 [DEVELOPER 00:02:03] client: SyncEvolution 1.5.3 for workstation [DEVELOPER 00:02:03] device ID: client-edsdav_2 [DEVELOPER 00:02:03] [DEVELOPER 00:02:03] [INFO 00:02:04] addressbook: inactive [INFO 00:02:04] calendar: inactive [INFO 00:02:04] calendar+todo: inactive [INFO 00:02:04] eas_contact: inactive [INFO 00:02:04] eas_event: inactive [INFO 00:02:04] eas_memo: inactive [INFO 00:02:04] eas_task: inactive [INFO 00:02:04] eds_event: inactive [INFO 00:02:04] eds_memo: inactive [INFO 00:02:04] eds_task: inactive [INFO 00:02:04] file_calendar+todo: inactive [INFO 00:02:04] file_contact: inactive [INFO 00:02:04] file_event: inactive [INFO 00:02:04] file_task: inactive [INFO 00:02:04] kde_contact: inactive [INFO 00:02:04] kde_event: inactive [INFO 00:02:04] kde_memo: inactive [INFO 00:02:04] kde_task: inactive [INFO 00:02:04] memo: inactive [INFO 00:02:04] todo: inactive [DEBUG 00:02:04] checking password property 'password' in config 'edsdav_2@client-test-edsdav-2' with user identity 'user01' [DEBUG 00:02:04] loading password from keyring with key user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:02:04] not using KWallet [DEBUG 00:02:04] sync password for edsdav_2@client-test-edsdav-2: loaded password from GNOME keyring using user=user01 server=127.0.0.1:9904/syncevolution [DEBUG 00:02:04] checking password property 'databasePassword' in datastore 'eds_contact' of config 'edsdav_2@client-test-edsdav-2' with user identity '' [DEBUG 00:02:04] sync is starting, catch signals [DEBUG 00:02:04] SuspendFlags: (re)activating, currently inactive [DEBUG 00:02:04] SuspendFlags: activating signal handler(s) with fds 38->37 [DEBUG 00:02:04] SuspendFlags: catch signal 15 [DEBUG 00:02:04] ready to sync [DEBUG 00:02:04] CreateContext SyncEvolution//eds_contact => 0 [DEBUG 00:02:04] Module_Version = 01090100 [DEBUG 00:02:04] Module_Capabilities: [DEBUG 00:02:04] PLATFORM:Linux [DEBUG 00:02:04] DLL:true [DEBUG 00:02:04] MINVERSION:V1.0.6.0 [DEBUG 00:02:04] MANUFACTURER:SyncEvolution [DEBUG 00:02:04] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:02:04] plugin_datastore_str:no [DEBUG 00:02:04] plugin_datastore_key:yes [DEBUG 00:02:04] ITEM_AS_KEY:yes [DEBUG 00:02:04] plugin_datablob:no [DEBUG 00:02:04] eds_contact: Module_PluginParams [DEBUG 00:02:04] eds_contact: Engine=01090100 [DEBUG 00:02:04] eds_contact: [DEBUG 00:02:04] Module_Capabilities: [DEBUG 00:02:04] PLATFORM:Linux [DEBUG 00:02:04] DLL:true [DEBUG 00:02:04] MINVERSION:V1.0.6.0 [DEBUG 00:02:04] MANUFACTURER:SyncEvolution [DEBUG 00:02:04] DESCRIPTION:SyncEvolution Synthesis DB Plugin [DEBUG 00:02:04] plugin_datastore_str:no [DEBUG 00:02:04] plugin_datastore_key:yes [DEBUG 00:02:04] ITEM_AS_KEY:yes [DEBUG 00:02:04] plugin_datablob:no [DEBUG 00:02:04] copying syncURL, username, password to Synthesis engine [DEBUG 00:02:04] using plain username/password for user01 [DEBUG 00:02:04] eds_contact: total number of items received 0 [INFO 00:02:21] eds_contact: starting normal sync, two-way (peer is server) [DEBUG 00:02:21] reading: set read-ahead based on sync mode two-way [DEBUG 00:02:21] eds_contact: reading: set order 'changed', 0 luids [DEBUG 00:02:21] eds_contact: 'eds_contact' dev='anydevice' usr='singleuser' err=0 [DEBUG 00:02:21] eds_contact: FilterSupport staticfilter: [DEBUG 00:02:21] eds_contact: dynamicfilter: [DEBUG 00:02:21] eds_contact: invisiblefilter: [DEBUG 00:02:21] eds_contact: using full item scan to detect changes [DEBUG 00:02:21] eds_contact: StartDataRead last='1' resume='1' res=0 [DEBUG 00:02:21] eds_contact: ReadNextItemAsKey aStatus=2 aID=(pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4,(null)) res=0 [DEBUG 00:02:21] eds_contact: ReadNextItemAsKey aStatus=0 aID=((null),(null)) res=0 [DEBUG 00:02:21] eds_contact: EndDataRead res=0 [DEBUG 00:02:21] eds_contact: StartDataWrite [DEBUG 00:02:21] eds_contact: total number of items received 0 [INFO 00:02:23] eds_contact: started [DEBUG 00:02:23] eds_contact: reading: getting contact pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:02:23] eds_contact: reading: must read contact pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:02:23] eds_contact: reading: disable read-ahead due to cache miss [DEBUG 00:02:23] eds_contact: reading: started contact read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) [DEBUG 00:02:23] eds_contact: reading: active cache pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) [DEBUG 00:02:23] eds_contact: reading: in running cache [DEBUG 00:02:23] eds_contact: reading: contact read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) finished: <<successful>> [DEBUG 00:02:23] eds_contact: reading: contact read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) got pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:02:23] eds_contact: reading: in cache, available [DEBUG 00:02:23] eds_contact: reading: continue after contact pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:02:23] eds_contact: reading: read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4: <<okay>> [DEBUG 00:02:23] eds_contact: requested 1, retrieved 1 from DB in 1 queries, misses 1/1 (100%), stalls 1 [DEBUG 00:02:23] eds_contact: ReadItemAsKey aID=(pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4,) res=0 [INFO 00:02:23] eds_contact: updating "Joan Doe" [DEBUG 00:02:23] eds_contact: reading: remove contact pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 from cache because of remove or update [DEBUG 00:02:23] eds_contact: insert pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 operation #0: queueing for batched update [DEBUG 00:02:23] eds_contact: aID=(pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4,) res=1 [DEBUG 00:02:23] eds_contact: batch update of 1 contacts starting [DEBUG 00:02:23] eds_contact: waiting for 1 pending operations to complete [DEBUG 00:02:23] eds_contact: batch update of 1 contacts completed [DEBUG 00:02:23] eds_contact: insert pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 operation #0: completed: <<successfully>> [DEBUG 00:02:23] eds_contact: pending operations completed [DEBUG 00:02:23] eds_contact: insert pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 operation #0: checking operation: inserted [DEBUG 00:02:23] eds_contact: aID=(pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4,) res=0 [DEBUG 00:02:23] eds_contact: total number of items received 0 [INFO 00:02:23] eds_contact: received 2/1 [DEBUG 00:02:24] eds_contact: EndDataWrite COMMIT '1' res=0 [DEBUG 00:02:24] eds_contact: DeleteContext [INFO 00:02:24] eds_contact: normal sync done successfully [DEBUG 00:02:24] closing session [DEBUG 00:02:24] session closed [DEBUG 00:02:24] SuspendFlags: deactivating fds 38->37 [DEBUG 00:02:24] SuspendFlags: close m_receiverFD 37 [DEBUG 00:02:24] SuspendFlags: close m_senderFD 38 [DEBUG 00:02:24] SuspendFlags: done with deactivation [DEBUG 00:02:24] Module_DeleteContext eds_contact [INFO 00:02:24] sync report: [INFO 00:02:24] +---------------|-----------------------|-----------------------|-CON-+ [INFO 00:02:24] | | LOCAL | REMOTE | FLI | [INFO 00:02:24] | Source | NEW | MOD | DEL | ERR | NEW | MOD | DEL | ERR | CTS | [INFO 00:02:24] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:02:24] | eds_contact | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | [INFO 00:02:24] | two-way, 0 KB sent by client, 0 KB received | [INFO 00:02:24] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:02:24] | start Fri Jan 5 19:14:34 2018, duration 0:23min | [INFO 00:02:24] | synchronization completed successfully | [INFO 00:02:24] +---------------+-----+-----+-----+-----+-----+-----+-----+-----+-----+ [INFO 00:02:24] ----------|--------CLIENT---------|--------SERVER---------| [INFO 00:02:24] | NEW | MOD | DEL | NEW | MOD | DEL | [INFO 00:02:24] ----------|-----------------------------------------------| [INFO 00:02:24] Expected | 0 | 1 | 0 | 0 | 0 | 0 | [INFO 00:02:24] Expected sync mode: two-way [INFO 00:02:24] Expected cycles: 1 [INFO 00:02:24] [DEBUG 00:02:24] ClientTest.cpp:8283: starting CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:02:24] ClientTest.cpp:8283: ending CPPUNIT_ASSERT_EQUAL((string("no error (remote, status 0)")),(Status2String(status))) [DEBUG 00:02:24] ClientTest.cpp:8284: starting CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:02:24] ClientTest.cpp:8284: ending CPPUNIT_ASSERT_EQUAL((STATUS_OK),(status)) [DEBUG 00:02:24] Checking sync source eds_contact... [DEBUG 00:02:24] ClientTest.cpp:8293: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:02:24] ClientTest.cpp:8293: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "STATUS_OK" + " == " + "source.getStatus()",(STATUS_OK),(source.getStatus())) [DEBUG 00:02:24] ClientTest.cpp:8305: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:02:24] ClientTest.cpp:8305: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:02:24] ClientTest.cpp:8308: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:02:24] ClientTest.cpp:8308: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "0" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT)",(0),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ANY, SyncSourceReport::ITEM_REJECT))) [DEBUG 00:02:24] ClientTest.cpp:8319: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:02:24] ClientTest.cpp:8319: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "syncMode" + " == " + "source.getFinalSyncMode()",(syncMode),(source.getFinalSyncMode())) [DEBUG 00:02:24] ClientTest.cpp:8322: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:02:24] ClientTest.cpp:8322: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "restarts + 1" + " == " + "source.getRestarts() + 1",(restarts + 1),(source.getRestarts() + 1)) [DEBUG 00:02:24] ClientTest.cpp:8328: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8328: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(clientAdded),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8334: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8334: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(clientUpdated),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8340: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8340: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "clientDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(clientDeleted),(source.getItemStat(SyncSourceReport::ITEM_LOCAL, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8347: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8347: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverAdded" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL)",(serverAdded),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_ADDED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8353: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8353: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverUpdated" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL)",(serverUpdated),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_UPDATED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8359: starting CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(serverDeleted),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] ClientTest.cpp:8359: ending CPPUNIT_ASSERT_EQUAL_MESSAGE(std::string(name) + ": " + "serverDeleted" + " == " + "source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL)",(serverDeleted),(source.getItemStat(SyncSourceReport::ITEM_REMOTE, SyncSourceReport::ITEM_REMOVED, SyncSourceReport::ITEM_TOTAL))) [DEBUG 00:02:24] Done with checking sync report. [DEBUG 00:02:24] ClientTest.cpp:6460: ending res = client.doSync(sourceArray, logname, options) [DEBUG 00:02:24] ClientTest.cpp:6465: starting postSync(res, logname) [DEBUG 00:02:24] ClientTest.cpp:6465: ending postSync(res, logname) [DEBUG 00:02:24] ClientTest.cpp:3839: ending doSync(logPrefix, options) [DEBUG 00:02:24] ClientTest.cpp:3844: starting compareDatabases() [DEBUG 00:02:24] ClientTest.cpp:3065: starting CPPUNIT_ASSERT(accessClientB) [DEBUG 00:02:24] ClientTest.cpp:3065: ending CPPUNIT_ASSERT(accessClientB) [DEBUG 00:02:24] ClientTest.cpp:3070: starting copy.reset(it2->second->createSourceB()) [DEBUG 00:02:24] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _2_B [DEBUG 00:02:24] overriding testing source eds_contact properties with the ones from config edsdav_2 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-2/peers/edsdav_2 [DEBUG 00:02:24] sync = two-way (set) [DEBUG 00:02:24] uri = addressbook (set) [DEBUG 00:02:24] backend = Evolution Address Book (set) [DEBUG 00:02:24] syncFormat = (default) [DEBUG 00:02:24] forceSyncFormat = 0 (default) [DEBUG 00:02:24] database = Test_eds_contact_2 (set) [DEBUG 00:02:24] databaseFormat = (default) [DEBUG 00:02:24] databaseUser = (default) [DEBUG 00:02:24] databasePassword = (default) [DEBUG 00:02:24] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:02:24] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:02:24] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:02:24] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:02:24] ClientTest.cpp:431: starting get()->open() [DEBUG 00:02:24] ClientTest.cpp:431: ending get()->open() [DEBUG 00:02:24] eds_contact: using full item scan to detect changes [DEBUG 00:02:25] ClientTest.cpp:3070: ending copy.reset(it2->second->createSourceB()) [DEBUG 00:02:25] ClientTest.cpp:3070: starting CPPUNIT_ASSERT((copy.get())) [DEBUG 00:02:25] ClientTest.cpp:3070: ending CPPUNIT_ASSERT((copy.get())) [DEBUG 00:02:25] ClientTest.cpp:846: starting CPPUNIT_ASSERT(config.m_dump) [DEBUG 00:02:25] ClientTest.cpp:846: ending CPPUNIT_ASSERT(config.m_dump) [DEBUG 00:02:25] ClientTest.cpp:856: starting source.reset(createSourceA()) [DEBUG 00:02:25] instantiating testing source eds_contact in config target-config@client-test-edsdav, with tracking name _1_A [DEBUG 00:02:25] overriding testing source eds_contact properties with the ones from config edsdav_1 = /data/runtests/work/testing-amd64/home/edsdav/config/syncevolution/client-test-edsdav-1/peers/edsdav_1 [DEBUG 00:02:25] sync = two-way (set) [DEBUG 00:02:25] uri = addressbook (set) [DEBUG 00:02:25] backend = Evolution Address Book (set) [DEBUG 00:02:25] syncFormat = (default) [DEBUG 00:02:25] forceSyncFormat = 0 (default) [DEBUG 00:02:25] database = Test_eds_contact_1 (set) [DEBUG 00:02:25] databaseFormat = (default) [DEBUG 00:02:25] databaseUser = (default) [DEBUG 00:02:25] databasePassword = (default) [DEBUG 00:02:25] ClientTest.cpp:424: starting CPPUNIT_ASSERT(get()) [DEBUG 00:02:25] ClientTest.cpp:424: ending CPPUNIT_ASSERT(get()) [DEBUG 00:02:25] ClientTest.cpp:425: starting CPPUNIT_ASSERT(!m_active) [DEBUG 00:02:25] ClientTest.cpp:425: ending CPPUNIT_ASSERT(!m_active) [DEBUG 00:02:25] ClientTest.cpp:431: starting get()->open() [DEBUG 00:02:25] ClientTest.cpp:431: ending get()->open() [DEBUG 00:02:25] eds_contact: using full item scan to detect changes [DEBUG 00:02:25] ClientTest.cpp:856: ending source.reset(createSourceA()) [DEBUG 00:02:25] ClientTest.cpp:856: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:02:25] ClientTest.cpp:856: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:02:25] ClientTest.cpp:857: starting CPPUNIT_ASSERT_EQUAL((0),(config.m_dump(client, *source.get(), sourceFile))) [DEBUG 00:02:25] ClientTest.cpp:6698: starting CPPUNIT_ASSERT(source.getOperations().m_backupData) [DEBUG 00:02:25] ClientTest.cpp:6698: ending CPPUNIT_ASSERT(source.getOperations().m_backupData) [DEBUG 00:02:25] eds_contact: reading: set order 'selected', 1 luids [DEBUG 00:02:25] eds_contact: reading: getting contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:02:25] eds_contact: reading: must read contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:02:25] eds_contact: reading: started contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) [DEBUG 00:02:25] eds_contact: reading: active cache pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) [DEBUG 00:02:25] eds_contact: reading: in running cache [DEBUG 00:02:25] eds_contact: reading: contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) finished: <<successful>> [DEBUG 00:02:25] eds_contact: reading: contact read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f-pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f (1) got pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:02:25] eds_contact: reading: in cache, available [DEBUG 00:02:25] eds_contact: reading: continue after contact pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f [DEBUG 00:02:25] eds_contact: reading: read pas-id-7d9868721f3b5c5b6fc972f820be6845e5c0b84f: <<okay>> [DEBUG 00:02:25] eds_contact: requested 1, retrieved 1 from DB in 1 queries, misses 0/1 (0%), stalls 1 [DEBUG 00:02:25] eds_contact: reading: set order 'none', 0 luids [DEBUG 00:02:25] ClientTest.cpp:857: ending CPPUNIT_ASSERT_EQUAL((0),(config.m_dump(client, *source.get(), sourceFile))) [DEBUG 00:02:25] ClientTest.cpp:857: starting CPPUNIT_ASSERT((source.get())) [DEBUG 00:02:25] ClientTest.cpp:857: ending CPPUNIT_ASSERT((source.get())) [DEBUG 00:02:25] ClientTest.cpp:858: starting source.reset() [DEBUG 00:02:25] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:02:25] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:02:25] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:02:25] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:02:25] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:02:25] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:02:25] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:02:25] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:02:25] ClientTest.cpp:463: starting get()->close() [DEBUG 00:02:25] ClientTest.cpp:463: ending get()->close() [DEBUG 00:02:25] ClientTest.cpp:858: ending source.reset() [DEBUG 00:02:25] ClientTest.cpp:391: starting reset(__null) [DEBUG 00:02:25] ClientTest.cpp:391: ending reset(__null) [DEBUG 00:02:25] ClientTest.cpp:863: starting CPPUNIT_ASSERT_EQUAL((0),(config.m_dump(client, copy, copyFile))) [DEBUG 00:02:25] ClientTest.cpp:6698: starting CPPUNIT_ASSERT(source.getOperations().m_backupData) [DEBUG 00:02:25] ClientTest.cpp:6698: ending CPPUNIT_ASSERT(source.getOperations().m_backupData) [DEBUG 00:02:25] eds_contact: reading: set order 'selected', 1 luids [DEBUG 00:02:25] eds_contact: reading: getting contact pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:02:25] eds_contact: reading: must read contact pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:02:25] eds_contact: reading: started contact read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) [DEBUG 00:02:25] eds_contact: reading: active cache pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) [DEBUG 00:02:25] eds_contact: reading: in running cache [DEBUG 00:02:25] eds_contact: reading: contact read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) finished: <<successful>> [DEBUG 00:02:25] eds_contact: reading: contact read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4-pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 (1) got pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:02:25] eds_contact: reading: in cache, available [DEBUG 00:02:25] eds_contact: reading: continue after contact pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4 [DEBUG 00:02:25] eds_contact: reading: read pas-id-85c080b82ef3226d63f26fcfd8d8c3f5ebded7c4: <<okay>> [DEBUG 00:02:25] eds_contact: requested 1, retrieved 1 from DB in 1 queries, misses 0/1 (0%), stalls 1 [DEBUG 00:02:25] eds_contact: reading: set order 'none', 0 luids [DEBUG 00:02:25] ClientTest.cpp:863: ending CPPUNIT_ASSERT_EQUAL((0),(config.m_dump(client, copy, copyFile))) [DEBUG 00:02:25] ClientTest.cpp:871: starting equal = config.m_compare(client, refFile.c_str(), actualFile.c_str()) [DEBUG 00:02:25] ClientTest.cpp:871: ending equal = config.m_compare(client, refFile.c_str(), actualFile.c_str()) [DEBUG 00:02:25] ClientTest.cpp:872: starting CPPUNIT_ASSERT(!raiseAssert || equal) [DEBUG 00:02:25] ClientTest.cpp:872: ending CPPUNIT_ASSERT(!raiseAssert || equal) [DEBUG 00:02:25] ClientTest.cpp:3084: starting copy.reset() [DEBUG 00:02:25] ClientTest.cpp:454: starting CPPUNIT_ASSERT(get()) [DEBUG 00:02:25] ClientTest.cpp:454: ending CPPUNIT_ASSERT(get()) [DEBUG 00:02:25] ClientTest.cpp:455: starting CPPUNIT_ASSERT(m_active) [DEBUG 00:02:25] ClientTest.cpp:455: ending CPPUNIT_ASSERT(m_active) [DEBUG 00:02:25] ClientTest.cpp:458: starting get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:02:25] ClientTest.cpp:458: ending get()->getOperations().m_endDataWrite.getPostSignal()(*get(), OPERATION_FINISHED, sysync::LOCERR_OK, true, &dummy) [DEBUG 00:02:25] ClientTest.cpp:461: starting anchor = get()->endSync(true) [DEBUG 00:02:25] ClientTest.cpp:461: ending anchor = get()->endSync(true) [DEBUG 00:02:25] ClientTest.cpp:463: starting get()->close() [DEBUG 00:02:25] ClientTest.cpp:463: ending get()->close() [DEBUG 00:02:25] ClientTest.cpp:3084: ending copy.reset() [DEBUG 00:02:25] ClientTest.cpp:391: starting reset(__null) [DEBUG 00:02:25] ClientTest.cpp:391: ending reset(__null) [DEBUG 00:02:25] ClientTest.cpp:3086: starting CPPUNIT_ASSERT(it1 == sources.end()) [DEBUG 00:02:25] ClientTest.cpp:3086: ending CPPUNIT_ASSERT(it1 == sources.end()) [DEBUG 00:02:25] ClientTest.cpp:3087: starting CPPUNIT_ASSERT(it2 == accessClientB->sources.end()) [DEBUG 00:02:25] ClientTest.cpp:3087: ending CPPUNIT_ASSERT(it2 == accessClientB->sources.end()) [DEBUG 00:02:25] ClientTest.cpp:3089: starting CPPUNIT_ASSERT(!raiseAssert || equal) [DEBUG 00:02:25] ClientTest.cpp:3089: ending CPPUNIT_ASSERT(!raiseAssert || equal) [DEBUG 00:02:25] ClientTest.cpp:3844: ending compareDatabases() [DEBUG 00:02:25] *** ending Client::Sync::eds_contact::testUpdate: okay ***