6399bd8181
The memset/memcpy of the embedded boost::function instances inside the old ClientTestConfig was causing segfaults at the end of a client-test run if compiled with optimization. Therefore this commit turns ClientTestConfig into a proper class containing members which initialize themselves (Bool wrapper class, std::string), thus memset is no longer needed and used. Also added the standard m_ prefix. m_numItems is gone, was never set by any backend anyway and even expected to be consistent in one test. Now CLIENT_TEST_NUM_ITEMS is read by defNumItems() each time it is needed. Removed "const char *" strings from method parameters. This revealed that config.itemType (a const char *) was incorrectly passed to insert() where the boolean "relax" parameter should have been given. Replaced by "false" (= strict checking) even though the old code must have run with an implicit "true" (= relaxed checking). Let's see whether any tests fail now. |
||
---|---|---|
.. | ||
backends | ||
dbus | ||
gdbus | ||
gnome-bluetooth | ||
gtk-ui | ||
syncevo | ||
synthesis-includes | ||
templates | ||
async.patch | ||
client-test-app.cpp | ||
client-test-buteo.cpp | ||
client-test-buteo.h | ||
CmdlineSyncClient.cpp | ||
CmdlineSyncClient.h | ||
README.h | ||
README.templates | ||
shlibs.local | ||
src.am | ||
syncevolution.cpp | ||
testcases.am | ||
valgrind.supp |
The configuration templates in "templates" get installed into $(datadir)/syncevolution/templates. When adding/changing a new server, then only enter the properties which need to be changed here so that the default values can be used for the remaining properties. An icon can be added here for servers. The file name must start with "icon". Server configurations must be kept in sync in three different places: - here (if a server is installed as files) - in SyncEvolutionConfig.cpp's EvolutionSyncConfig::createServerTemplate() - in SyncEvolutionCmdline.cpp's test server configs - in test/test-dbus.py testGetConfigsTemplates() Note that server icons must come with a suitable license that allows redistribution.