f3f689b857
The parsed number always has a country code, whereas SyncEvolution expected it to be zero for strings without an explicit country code. This caused a caller ID lookup of numbers like "089788899" in DE to find only telephone numbers in the current default country, instead of being more permissive and also finding "+189788899". The corresponding unit test was broken and checked for the wrong result. Found while investigating an unrelated test failure when updating libphonenumber. EDS handles this differently, by calling ParseAndKeepRawInput() if necessary (checked by configure) and looking at the source of the country code. Instead of replicating that logic, let's use EPhoneNumber. This means that EDS has to be compiled with libphonenumber support, because SyncEvolution can no longer fall back to using libphonenumber directly. For testing purposes it is still useful to not depend on X-EVOLUTION-E164. testLocaledPhone uses this at the moment, because re-generating X-EVOLUTION-E164 during a locale change seems to be broken at the moment in the intel-work-3-12 branch. The test itself has to be updated for the newer libphonenumber (6.1.1 instead of 5.3.2). The "12345" string it relied upon now gets parsed consistently in US and DE. Instead we use the "01164 3 331 6005" string (as in libphonenumber tests) which is treated differently. |
||
---|---|---|
.. | ||
backends | ||
dbus | ||
gdbus | ||
gdbusxx | ||
gnome-bluetooth | ||
gtk-ui | ||
gtk3-ui | ||
syncevo | ||
synthesis-includes | ||
templates | ||
async.patch | ||
client-test-app.cpp | ||
README.h | ||
README.templates | ||
shlibs.local | ||
src.am | ||
syncevo-local-sync.cpp | ||
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.