Commit graph

1392 commits

Author SHA1 Message Date
Zhu, Yongsheng c234306473 The main purpose is to refine nightly test report.
1) extract test results from many result files and combine them
into a xml format file to summary each unit test status
2) use 'compare.xsl' to compare two days' result and generate
comparison result
3) generate more visiable html output file by nightly result
and comparison result to make tracking regressions easily
2009-08-24 15:18:47 +02:00
Zhu, Yongsheng 5b0519e5b0 Funambol: A bug fixing of libsynthesis for mobical to expose this issue (Bug #3009)
If 'BYMONTHDAY' of 'RRULE' is not presented in 'monthly', funambol
will generate a 'BYMONTHDAY' part  automatically. They all should
be correct. So change the cases to avoid this difference.
2009-08-13 09:09:19 +08:00
Zhu, Yongsheng fe202f27d3 Mobical: Add new suppressions to synccompare, README.mobical and test
cases patches (Bug#3009)

1. Add new suppressions to synccompare for vcard21, ical20, itodo20 and
text.
2. Add README.mobical for mobical interoperability test results
3. Add 3 test patches for vcard21, ical20, itodo20
2009-08-13 09:09:19 +08:00
Zhu, Yongsheng 0c0f750af1 Mobical: Add a 'TEL' property for mergeItem in clienttest (bug#3009)
Also add a 'TEL' property for mergeItem because mobical
treats a vcard as an invalid item when it has no one of
'TEL', 'URL', 'EMAIL' or 'ADR'.
2009-08-13 09:09:19 +08:00
Zhu, Yongsheng 729a1cc17e Mobical: Add CLIENT_TEST_NOCHECK_SYNCMODE (Bug #3009)
Mobical.net always initiates a slow sync mode when it
has no any data for a typed information. Do not check
sync mode when setting this environment variable as
'1', 't' or 'T'.
2009-08-13 09:09:18 +08:00
Patrick Ohly 7be8507713 NEWS + README.scheduleworld: updated for 0.9
The NEWS item for 0.9 summarizes the changes in the
0.9 release cycle and documents the most important
known issues.

For ScheduleWorld the missing resume feature
is mentioned.
2009-08-11 19:22:18 +02:00
Patrick Ohly 1770cdd1fc README.scheduleworld: removed section on delete/update conflicts
ScheduleWorld has switched to "preserve update" as conflict resolution,
rendering the comments about data loss mute.
2009-08-10 11:46:01 +02:00
Chen Congwu fb13c0711c Testing: use server default configuration when init test configs.
When test configuration is inited, currently it is stick to scheduleworld
while it should be generated differently accoring to the CLIENT_TEST_SERVER.
2009-08-07 11:48:10 +02:00
Patrick Ohly a074346e60 README.scheduleworld: updated remark about client delete/server update conflict (Bugzilla #4369)
My experiments showed that Synthesis and Funambol both preserve the
updated item, regardless which side has it. Added that to the text.
2009-07-31 09:07:33 +02:00
Patrick Ohly 56cf08e4bf sync statistics: count items deleted during refresh-from-server (Bugzilla #3314)
The Synthesis Engine doesn't count these items because Synthesis wants
the engine to count only items deleted by the remote side. For our
statistics this looks a bit unrealistic (items before sync + added - deleted
does not add up to items after sync), so we now track items deleted
locally and use that number instead of the Synthesis statistics for deleted
items when we know that it is not complete.

In the command line, we show detailed statistics. In the GUI, it shows
up as part of the locally applied changes.

The new testComplexRefreshFromServerSemantic test covers this particular
aspect of the statistics.
2009-07-30 17:19:46 +02:00
Patrick Ohly 2f94b34c86 Testing: keep synccompare error output (____compare.log) around
Instead of calling rm, simply keep the file. This might be useful
when running a single test. When running multiple tests, tee will
overwrite the old one.
2009-07-30 11:04:10 +02:00
Chen Congwu 6cb4728543 Testing: let synccompare error output go to corresponding case log file.
Set CLIENT_TEST_COMPARE_LOG to let syncompare result goto log fle as well
as showing on the stdout.
2009-07-30 10:10:51 +02:00
Patrick Ohly be379c15c2 testing: document known issues with ScheduleWorld (#4369)
ScheduleWorld has a 'client delete' wins over 'server update' policy. Mark didn't
sound like he wanted to change this, so document this potentially dangerous behavior.
2009-07-27 11:17:48 +02:00
Patrick Ohly f22c4b0494 testing: added testSlowSyncSemantic
This test checks whether the server a) creates no duplicates
during a slow sync (also covered by testManyItems) and b) correctly
associates the client's item with its own copy.

As described in Bugzilla #4703, the ScheduleWorld server currently
has a problem with the later (for contacts) and fails to delete
the item on the client, apparently because it doesn't remember the
LUID correctly. It also fails this test for text because it creates
duplicates.
2009-07-25 23:00:21 +02:00
Patrick Ohly 9c8eb81c45 testing: removed incorrect CLIENT_TEST_FAILURES=EvolutionCalendarTest::testOpenDefaultMemo
First, the test really shouldn't fail. Need to investigate why it does on
one test platform. Second, it was applied to all test runs, overwriting
the desired value of CLIENT_TEST_FAILURE for that run.
2009-07-24 17:00:50 +02:00
Patrick Ohly 003534c983 documentation: Google drops photos larger than a certain threshold (Bugzilla #4638)
Photos somewhere between 40KB (okay) and 80KB (dropped) are silently
dropped by the server. Documented this behavior in README.google and
the NEWS for 0.9 final, as we cannot do anything else about it.
2009-07-23 13:13:41 +02:00
Patrick Ohly 89d1ae3b35 testing: don't compress .out files
These files used to contain the complete sync session
output. Now they contain just the user-visible output,
so don't compress anymore because that doesn't save much
space and makes the files harder to read.
2009-07-22 11:54:30 +02:00
Patrick Ohly b69430fb98 testing: added --sanity-checks mode
In this mode, Client::Sync is replaced with
just Client::Sync::<first source>::testItems.
This assumes that all servers support WBXML
with our test data.
2009-07-22 10:53:01 +02:00
Patrick Ohly 275e561d02 testing: copy log directory in addition to stdout
.log.gz is the stdout of a complete test. It covers
multiple sync sessions, which are in the corresponding
directories.
2009-07-22 10:53:01 +02:00
Patrick Ohly 07d526945c ScheduleWorld testing: ignore text::testManyItems failure (Bugzilla #4596)
The server doesn't do twinning during a slow sync correctly,
thus duplicating all text items.
2009-07-21 11:09:59 +02:00
Patrick Ohly a7edbb3cd8 testing: added Google contact sync testing
Only contacts in vCard 2.1 are tested. Several
failures are ignored because Google does not support
them:
* refresh from client
* one-way from client
* XML format

These tests are run although we know that they
fail, just in case that at some point they start
to work.
2009-07-21 11:06:49 +02:00
Patrick Ohly d630535cfd testing: added ZYB.com for contacts
Calendar sync would also work, but is no longer officially supported, thus not enabling it.
2009-07-20 15:30:11 +02:00
Patrick Ohly 2daf66bf38 testing: removed ScheduleWorld failure suppression for new clients
vcard30::testCopy used to fail because adding new clients forced
unexpected slow syncs on all other clients. This should be fixed
now, so the FAILURES entry could be removed.
2009-07-20 15:30:11 +02:00
Chen Congwu 52f736fc37 Goolge + vcard21: bugzilla #2423, ignore some properties
ignore some properties that google server will get lost
not comparing PHOTO encoded data because google always return jpg format

Ignore value mismatch in FN, NOTE, ORG and TEL
Add google specific case to workaround a test failure because of delele failed
to clean the previous data (A know issue in server)

slightly change a test case to workaround google
google server can not delete cleanly; if a later test sends a contact with the
same N field, the server will trigger a client side update which is not
expected.
2009-07-17 17:27:07 +08:00
Zhu, Yongsheng 8b46b1dcad Funambol: add a declaration of lost parameter 'X-EVOLUTION-UI-SLOT' (Bug #2422)
Add a declaration in README.funambol:
The parameter 'X-EVOLUTION-URI-SLOT'of properties
like 'TEL' and 'EMAIL' is lost
2009-07-16 11:37:17 +02:00
Patrick Ohly 98df00d558 testing: fixed typo in recent commit
The local "evolution" test failed because of a typo
in the Python function call: comma instead of %.
2009-07-15 17:03:33 +02:00
Patrick Ohly 7719dcf26b testing: valgrindcheck and dbus-session scripts
These scripts are used by the regular testing.
valgrindcheck.sh checks that valgrind didn't print
any output while running a program, dbus-session.sh
creates a D-Bus session for running a program
(necessary starting with GNOME 2.26 if D-Bus is not
running yet and there's no X).
2009-07-15 17:03:33 +02:00
Patrick Ohly a47d7ff1d2 testing: allow parallel makes
Added --make-command to runtests.py: can be used to ask for a parallel
make.
2009-07-15 17:03:33 +02:00
Patrick Ohly 3c2bf7ea49 testing: workaround for running client-test with --enable-shared --disable-static
For weird reasons that I don't have the patience to analyze running
the client-test wrapper script as generated by libtool fails
to set up the search path for libsyncevolution.so. It works
for syncevolution.

As a workaround let's simply set LD_LIBRARY_PATH ourselves, regardless
whether it is needed.
2009-07-15 17:03:32 +02:00
Zhu, Yongsheng 3528943c26 Funambol: FN and PHOTO are preserved by server (Bug #2422)
In synccompare, properties 'FN' and 'PHOTO' are ignored
for they are lost by previous funambol server. But
actually they are right now.
2009-07-15 10:24:28 +08:00
Chen Congwu 166280482c Use raw type for updated item, buggzilla #4282 2009-07-14 10:36:50 +02:00
Patrick Ohly 76e190ebaf testing: avoid running Retry and Suspend tests for ScheduleWorld and Funambol
These tests are both slow and tend to fail with these servers
because of deficiencies in the servers. Disabled these tests
as discussed in Bugzilla #4282.
2009-07-14 10:02:16 +02:00
Patrick Ohly 2dbb186ab2 testing: run distcheck with building GUI
distcheck is useful to ensure that all files are distributed,
the result builds and cleans up properly. Doing this with
building of the GUI is important to avoid surprises during
packaging.
2009-07-14 10:02:16 +02:00
Patrick Ohly af682ad395 testing: added suppressions
Added some more suppressions necessary for Debian Lenny,
Evolution 2.22, valgrind 3.3.1.
2009-07-14 08:50:49 +02:00
Patrick Ohly c602de1c3e testing: skip certain tests by listing them in CLIENT_TEST_SKIP
The only way that I found not to execute a test was not to register
it in CPPUnit. FilterTest() does this by replacing a valid test
or test group with a dummy one, SkipTest, which just prints the
test name and that it is skipped.

Registering tests has to be intercepted at multiple levels:
- CPPUNIT_TEST in test suites
- ADD_TEST in ClientTest
- addTest in ClientTest

Not currently intercepted are complete test suites (CPPUNIT_TEST_SUITE).

The main purpose of this patch is to avoid running the time consuming
suspend and interrupt tests, but this feature might also be useful for
other tests, which is why it was implemented in a more general way.
2009-07-13 18:31:48 +02:00
Patrick Ohly 8c3157d93f testing: ignore EvolutionCalendarTest::testOpenDefaultMemo failure
This is currently broken because opening the default system
addressbook depends on e_cal_new_system_memos(), which is
not available in all Evolution versions.

It could be added, but first we should sort out issue #3732.
2009-07-13 15:30:56 +02:00
Patrick Ohly 53573ba030 testing: enable ical20 and itodo20 for Funambol testing 2009-07-13 15:29:22 +02:00
Patrick Ohly f9da1b8f84 HTTPS transport: added SSL certificate checking
- when libsoup is used (as on Moblin), the configure script sets
  a default search for the SSLServerCertificates option which works
  on Debian and Red Hat:
  /etc/ssl/certs/ca-certificates.crt:/usr/share/ssl/certs/ca-bundle.crt
- with libcurl the library's own default is used; SSLServerCertificates
  is empty, but can be set to override the default
- libsoup enables checking when either SSLVerifyServer or SSLVerifyHost
  is on (does not support more control over checking), refuses to work
  if no CA certificates file was found
- libcurl supports both strict checking (both options on) and less
  strict checking (only check certificate, but not hostname)
2009-07-10 13:44:42 +02:00
Patrick Ohly 8dcce52419 testing: extended valgrind suppression rules
Did real sync tests (ical20 + vcard30 testItems) with Ubuntu 8.04,
valgrind valgrind-3.4.1.SVN-9098-1883, 64 bit mode. Some issues in
libsynthesis could be fixed, others (like writing uninitialized
data into binfiles) hopefully can be ignored.
2009-07-10 13:14:07 +02:00
Patrick Ohly 06de3dc6e5 logging: catch more redirected output when shutting down
Catch fatal signals (SIGSEGV, SIGABRT, SIGBUS) and in the signal
handler, flush and process output.

Flushing is done each time redirection is removed and thus
also catches output that is pending in either C or C++ output
streams during a normal application shutdown.

The abort-redirect test program covers such a scenario. It does
a double free, which depending on libc causes a segfault or
error message. The source is in "test" (like the rest of the
test programs) while the binary is built with "make abort-redirect"
in "src". It would be nicer if the test folder was a subdirectory of
src and wouldn't require its own Makefile, but that's a different issues...

Note that glib's double free report is written to the console
regardless whether stdout/stderr redirection is enabled. It seems
that glibc does not use FDs 1 or 2 for that, redirecting them in
the shell has no effect either. Catching the signal and flushing
is useful nevertheless.
2009-07-10 08:43:37 +02:00
Patrick Ohly c6c1a59fb7 testing: updated valgrind regression rules
Tested with local tests (Client::Source SyncEvolution), valgrind 3.4.1.SVN-9098-1883,
Evolution 2.22.3.1, on Ubuntu 8.04 in 64 bit mode. Some stack backtraces were
slightly different, some problems are new. None seem to be caused by us.
2009-07-09 13:49:32 +02:00
Patrick Ohly a49bd48873 test/testcases/README: fixed typo (.ics -> .tem) 2009-07-09 12:00:58 +02:00
Patrick Ohly e9e8ad72fb testing: better handling of test case cases (Bugzilla #2421)
This patch fully automates all work when running make inside the
src directory. It achieves that by not letting make check dependencies.
Instead shell commands check what needs to be updated. By using
touch with the patched file as reference, the regenerated patch
is never newer than it, thus cycles of repeatedly writing files
is avoided.

One drawback is that client-test is needlessly rebuilt, because
it now depends on a phony target. This is not optimal, but better
than not rebuilding files that have to be rebuild, as before.
2009-07-09 10:44:58 +02:00
Patrick Ohly 2ae283ee2c testing: callers of getItems() need to know which file was used (Bugzilla #2421)
Without that information, the wrong files are compared, leading to false
test failures. Because getItems() is also called indirectly via import(),
this change ripples through several functions.
2009-07-08 18:38:58 +02:00
Chen Congwu 445bceb9a8 Test case files: better handling of test cases, bugzilla #2421
We were using the same set of test cases for different server, this
is a bit limited; now importItem will first check a server specific
test case file and will fallback to the general case file if failed.
The makefile is also changed.
2009-07-08 18:15:20 +02:00
Patrick Ohly a79c625588 README.funambol: added some links and mention lost ACTION
With the links to our and Funambol's bug tracker it is easier
for someone who only has the README to verify what the current
status is. The ACTION issue was not mentioned in the README.
2009-07-08 18:09:14 +02:00
Patrick Ohly 1ba96c44e6 Funambol: force iCalendar 2.0 mode in the config template
As testing shows, results are better when sending items as
iCalendar 2.0 even though the server claims that it prefers
vCalendar 1.0.
2009-07-08 17:56:49 +02:00
Zhu, Yongsheng 161445071b Funambol: Fix a comparison for completeness (Bug #2424)
Check the value of the environment variable 'CLIENT_TEST_MAX_ITEMSIZE'
is not negative for completeness
2009-07-08 11:01:18 +08:00
Zhu, Yongsheng 77788938eb Funambol: Refine README.funambol (Bug #2422)
Add limitations, lost properties, failed cases, and others
for Funambol interoperability test
2009-07-08 10:02:29 +08:00
Zhu, Yongsheng bedac8a217 Funambol: Ignore and remove some property or parameters when synccompare(Bug #2422)
Funambol Server gets lost some properties of icalendar2.0:
'URL', 'ATTENDEE', 'RECURRENCE-ID'
The parameter 'CN' of the property 'ORGANIZER' is lost by server.
Also, it adds a new property 'REPEAT'.
2009-07-07 17:26:47 +08:00
Zhu, Yongsheng 5a66fbc44d Funambol + itodo20: add 'text/calendar!' to force to use icalendar20(Bug #2422)
Register 'text/calendar!' for itodo20 to force to use icalendar20
2009-07-07 17:26:47 +08:00
Zhu, Yongsheng 7a06414f59 Funambol + itodo20: ignore some property comparisions in synccompare(Bug #2422)
1)Remove 'STATUS' property for server doesn't preserve it.
2)Remove 'CLASS:PUBLIC' and 'PERCENT-COMPLETE:0', which are
added by server by default.
2009-07-07 17:26:47 +08:00
Zhu, Yongsheng 0607964693 Funambol + vcard21: Ignore 'X-ASSISTANT' property in synccompare.pl(Bug #2422)
Remove 'X-ASSISTANT' property for server doesn't preserve it.
2009-07-07 17:26:46 +08:00
zhu, yongsheng 68e945dfc8 Funambol + ical2.0: add an environment variable to set maximum item size (Bug #2422)
Funambol server has a length limitation for 'DESCRIPTION' property. If item is larger
than the limitation, the rest part will be lost. Add the environment variable
"CLIENT_TEST_MAX_ITEMSIZE" to allow controlling this size
2009-07-07 17:26:46 +08:00
zhu, yongsheng 420a8cc24c Funambol: Add README.funambol for Funambol interoperability test information(Bug #2422)
Add README.funambol for funambol interoperability test information. These include Funambol
server information, desired test types, known properties got lost by server, known failures
2009-07-07 17:26:46 +08:00
zhu, yongsheng cf09810532 iCal20: Ingore properties comparasion for Funambol miss them(Bug #2422)
Five properties are missed by Funambol, so synccompare doesn't compare these
properties. These include UID, SEQUENCE, TRANSP, LAST-MODIFIED, X-EVOLUTION-ALARM-UID.
2009-07-07 17:26:46 +08:00
Chen Congwu b3296d6241 Test cases: Enable Interrupt* test, add suspend test 2009-07-01 14:45:47 +02:00
Patrick Ohly e2b5af8f14 extracting items: EvolutionMemoSource needs information about expected format
Both EvolutionSyncSource::backupData() (implemented for the memo source
in the TrackingSyncSource base class) and Client::Source::text::testImport
must dump items in the native format, the one which is used for restore
and for the test cases. See Bugzilla #3967 and #3929.

This broke during the 0.9 development cycle, but wasn't detected during
automated testing because the necessary tests weren't enabled for
the "text" source until recently.

Now createItem() is passed a hint what the desired format is. "raw"
is used for backup and testing.

Also removed obsolete exportData() call in EvolutionCalendarSource.
This was used before introducing the newer backupData() call.
2009-07-01 14:10:59 +02:00
Patrick Ohly ac8638bee2 testing: fixed Client::Sync::vcard30::testConversion
The test failed because it showed duplicate X-MANAGER/... properties.
This was a result of adding those a few commits earlier. Now synccompare
checks whether there are such redundant properties and removes
them.
2009-07-01 12:45:46 +02:00
Patrick Ohly c7d3bd891e testing: "text" tests didn't have the required "dump" method
Without that method most of the tests couldn't be done and combined
tests (Client::Sync::vcard30_ical20_itodo20_text::testCopy) failed
with an assertion.

All of the predefined tests share the same methods, so moved them
into the general section. Backends which need something else have
to override the defaults or unset them, if nothing works.
2009-06-26 16:01:29 +02:00
Patrick Ohly 269983003a runtests.py: updated to work with current source code
Added support for git checkout. Replaced Funambol with
Synthesis. Added --mailhost option.
2009-06-26 08:30:09 +02:00
Patrick Ohly 9027b32b7a vCard: support X-MANAGER/ASSISTANT/SPOUSE/ANNIVERSARY (Bugzilla #2418)
These properties are supported in addition to, not instead of, the
traditional X-EVOLUTION- variants. This is done by sending both
property variants to a SyncML server and accepting both when parsing
a vCard. When parsing, X-EVOLUTION- takes precendency over the normal
X- one, which is only relevant in case that they differ.

This is necessary for Funambol, which added support for normal X-
variants in the 7.x server release. ScheduleWorld accepts both
and still works (tested).
2009-06-24 16:16:52 +02:00
Patrick Ohly bf198f4975 testing: message and object size was too small
When working with the Funambol engine, 0 meant "default values",
which were reasonably large for message size and unlimited for object
size.

After migrating to Synthesis and enabling these limits again, 0 has
no special meaning and is rounded up to some very small numbers. These
limits were too small for some items, therefore the settings used by
tests by default were bumped up to 128KB for message size (should
keep the overall message number fairly small) and 1GB for individual
items (basically unlimited again).
2009-06-24 10:35:42 +02:00
Patrick Ohly 596e13815f testMerge: detect missing update from server to client after conflict resolution
The test didn't actually cause a conflict as originally intended because at
one point client A instead of client B was synced.

The result of the conflict resolution wasn't checked thoroughly enough: only
the number of items on the client was checked to determine whether items
were duplicated. Now the test also compares the actual data on client A and B
to find out whether they are in sync.

With ScheduleWorld, it was found that in some cases (VEVENT with new and
different properties added by both clients), the client which
caused the conflict was not updated (Bugzilla #2036). Catching this
required some changes in the test data.

Just to be sure, a refresh-from-server requests the actual data on the
server. This will detect cases where the server modifies the data, but
then updates neither client A nor B.
2009-06-17 16:50:45 +02:00
Patrick Ohly ef335cd8d4 testing: removed code which wasn't needed anymore
Config::testcases_server had no useful purpose. The extra dump()
method became redundant because the EvolutionSyncSource API *always*
returns "native" items and thus the generic method works fine.
2009-05-14 19:51:58 +02:00
Patrick Ohly ea9535034b synccompare: due to typo it did not compare file against dir (skipped content of dir)
This showed up as verification errors during Client::Source::vcard21::testImport
and Client::Source::text::testImport (#2219, #2220).
2009-05-14 19:48:16 +02:00
Patrick Ohly 70930b6cc2 synccompare: ignore UID when comparing for Synthesis server (#2161)
The default server config in SyServ Demo 3.2.0.26 only supports
vCalendar 1.0 without UID. Suppressing the UID comparison is an
oversimplification, but helps to get the Client::Sync::ical20::testCopy
test to work - at least for me.
2009-05-11 20:42:17 +02:00
Patrick Ohly 24ec37aee7 synccompare: filter out INTERVAL=1 in normal form (#2029)
INTERVAL=1 is the default, therefore it can be removed. This is required
for testing with upstream libical, which adds this redundant value.
2009-05-11 15:51:08 +02:00
Patrick Ohly 2cdf3916dc Merge branch 'master' into ui 2009-05-07 12:18:14 +02:00
Patrick Ohly 016a30ac95 EvolutionMemoSource: notes with only a summary were not sent correctly
Instead of sending the summary, only the empty description was sent.
Now the summary is sent. This has the effect that on a full round-trip,
the summary gets duplicated as part of the description. synccompare
was adapted to not complain about this for the newly added testcase
for this: the script also duplicates the summary.

This cannot be avoided because notes are exchanged as plain text
which cannot distinguish between summary and description.
2009-05-05 11:37:51 +02:00
Patrick Ohly 513a58c004 testing: check for correct server behavior during refresh-from-client
During a refresh-from-client sync, the server has to delete all items
that it currently has before adding those sent by the client. This
new test covers that. It complements the testRefreshSemantic test,
which did that for the other direction and thus was renamed to
testRefreshFromClientSemantic.

The server also needs to tell other clients to delete the items
that were deleted this way during a refresh-from-client. This is
not currently tested.
2009-05-02 11:32:18 +02:00
Patrick Ohly d7a2d4ce8e Merge branch 'master' into ui 2009-04-30 18:44:59 +02:00
Patrick Ohly 3217ac8630 license: merged LGPL v2.1 -> LGPL v2.1 + v3 change
Followed the license change applied to the upstream content
and applied the same LGPL v2.1 + v3 license to content
created at Intel.
2009-04-30 18:35:56 +02:00
Patrick Ohly 82debf7326 license: changed to LGPL v2.1 + v3
As with the previous change from AGPLv3 to LGPL v2.1, this is covered
by copyright ownership and/or the Funambol contributor agreement.

The motivation for adding v3 is greater flexibility regarding
reusing the code in other places and relicensing it.
2009-04-30 18:26:27 +02:00
Patrick Ohly 3cde4013dd synccompare: each of the two parameters can refer to a directory of items in addition to plain files
A directory is treated exactly like a file by concatenating all files inside
the directory and then working with the resulting text.
2009-04-22 14:25:01 +02:00
Patrick Ohly 54cb54b8e8 testing: the "New York" test case works again
This depended on VTIMEZONE before VEVENT (because that is
what ScheduleWorld needs). Since Synthesis supports this now,
the test can be enabled again.
2009-04-16 14:42:58 +02:00
Patrick Ohly e1f2e694f2 ical20 todo: added support for URL and PERCENT-COMPLETE
Added two new fields to the XML configuration and updated the
test case. Also switched to a time zone which doesn't get mangled.
2009-04-01 17:20:27 +02:00
Patrick Ohly ef11945687 testing: 'text' was incomplete
Comparison was missing altogether. Items were not imported as text/calendar
because the type wasn't set. Creating new items didn't work because <<REVISION>>
was in the wrong place: it needs to be in the DESCRIPTION, so that SUMMARY and first
line of DESCRIPTION remain identical (expected by some peers and our own sync source).
2009-04-01 16:46:55 +02:00
Patrick Ohly 192c2fe37f testing: disable interrupted sync testing temporarily
This depends on suspend/resume support, which we don't have yet.
2009-04-01 15:31:53 +02:00
Patrick Ohly c859703850 testing: ignore -(Standard) suffix in TZID
Evolution 2.24.5 adds this. It can be ignored because we are not
sending it out like that (Synthesis engine matches it against the
imported libical time zones, which don't have this suffix), thus
our peers won't have a problem with it.
2009-04-01 12:32:27 +02:00
Patrick Ohly 0a8658d23a vcard: added X-MOZILLA-HTML support
This is currently stored as a simple string in the field "WANTS_HTML".
A boolean field would be nicer, but isn't available.
2009-03-31 21:41:00 +02:00
Patrick Ohly f13307ac52 testing: fixed wrong summary of daily repeating event
The summary incorrectly claimed that the event recurred weekly.
2009-03-31 17:52:54 +02:00
Patrick Ohly bf4c7721c0 testing: simplified ical20 test cases for Synthesis engine
The Synthesis engine transforms COUNT into UNTIL clauses. This
is semantically not quite the same, but for viewing the events the result is
identical (verified in Evolution).
2009-03-31 17:50:29 +02:00
Patrick Ohly f75037e67f HTTP transport: check reply content type
Instead of passing an invalid reply into the Synthesis engine where
it triggers an obscure (WB)XML parser error in the SyncML Toolkit,
check the content type and dump a non-(WB)XML reply into our own log,
then abort with a "transport failed" error.

libsoup already aborted because of the non-200 server status. Now it
also dumps the message in that case.
2009-03-31 15:34:49 +02:00
Patrick Ohly 323b1b35df testing: removed 'New York' test case
The Synthesis time zone handling has some issues with this. The 2006
rule set is detected, but then replaced by the different 2007 rule
set.

Reported to Synthesis, removing the test case in the meantime.
2009-03-30 17:24:34 +02:00
Patrick Ohly 50a3c965c7 testing: removed 'recurr at end of month' test case
Recurrences relative to end of week/month/year are not supported by Synthesis.
2009-03-30 15:51:46 +02:00
Patrick Ohly b8598afe55 Revert "testing: simplified test cases"
This reverts commit dd22cd12d4.

The original test cases can be restored because libsynthesis now
knows about libical time zone definitions and preserves then.
Some of the other Evolution specific tests are not supported yet;
those will be simplified separately.
2009-03-30 15:47:24 +02:00
Patrick Ohly fa3dcb756a testing: fixed invalid memory access when printing empty log prefix 2009-03-27 16:17:55 +01:00
Patrick Ohly 25a8502a4b copyright updated
update-copyright.sh can be used to add copyright remarks for the current
year. It finds the authors who made a change in each file and adds/updates
their copyright remark. Intel employees are grouped under "Intel Corporation".
2009-03-25 15:21:04 +01:00
Patrick Ohly dae1b8854d testing: relicensed as LGPL v2.1, like the rest of the code
This is permitted by the Funambol contributor agreement (copy
is in doc/Sync4jContribution.pdf). It reduces the license mix
and allows distributing synccompare without special precautions.
2009-03-25 14:43:54 +01:00
Patrick Ohly 7a9522767a testing: use separate EXDATEs as normal form
The previous approach did not sort values. It was inefficient (multiple s// passes).
With multiple EXDATE properties it is also easier to find added/removed ones.
2009-03-25 14:43:54 +01:00
Patrick Ohly dd22cd12d4 testing: simplified test cases
Bugzilla 1334 and 1336 trigger item rewriting which is okay, but
shows up in the automated testing as failure:
- different time zone definitions
- RRULE UNTIL->COUNT

That's okay, but to avoid the automated test failure I replaced
the test cases with the output of testConversion. Revert this
when the issues above are solved in a better way!
2009-03-25 14:43:53 +01:00
Patrick Ohly 09113b0480 testing: removed obsolete X-EVOLUTION-ENDDATE parameter 2009-03-25 14:43:53 +01:00
Patrick Ohly fb13e3d2af testing: remove default VALUE=DATE and join multiple EXDATE values 2009-03-25 14:43:53 +01:00
Patrick Ohly 27623b6c8c testing: ignore difference due to different order of RRULE value subcomponents
Evolution itself seems to have changed the order (testImport) and
Synthesis also does it differently; both is okay, the order doesn't matter.
2009-03-25 14:43:53 +01:00
Patrick Ohly 2f6a2ad337 testing: print sync name to give feedback while each sync test runs 2009-03-25 14:43:52 +01:00
Patrick Ohly af81e81aca synccompare: normalize case of mailto: in ATTENDEE and ORGANIZER
The standard probably says it's case insensitive.
2009-03-25 14:43:51 +01:00
Patrick Ohly c6606b9482 iCalendar 2.0 testcases: converted to CRLF as required by standard 2009-03-25 14:43:51 +01:00
Patrick Ohly bd1d2d01ef vcard testing: use the right testcases for vcard21 conversion tests
Evolution vcard21 source defines testcases/vcard30.vcf as its native
test case file. For vcard21::testConversion we must use vcard21.vcf instead
because that is the format used for encoding the items.

Note that the test doesn't pass because synccompare does not support
old-style vcard and vcalendar encoding: line breaks aren't handled
correctly etc.
2009-03-25 14:43:51 +01:00
Patrick Ohly 636c1fb22c vcard: removed special ADR TYPE=PARCEL handling
This used to be necessary because Evolution created TYPE=OTHER,
which is non-standard. Now this type is removed by the Synthesis
decoder/encoder.
2009-03-25 14:43:51 +01:00
Patrick Ohly 6b19b0ca0b normalize values which look like a date to YYYYMMDD
This is necessary because the Synthesis encoder doesn't
insert the optional hyphen.
2009-03-25 14:43:50 +01:00
Patrick Ohly 4ae40026a4 configuration: removed obsolete config options and added WBXML
Removed the "encoding" source option. It was of dubious usefulness
with Funambol and has meaning with Synthesis at all.

Removed dead code in EvolutionSyncConfig.

Added "enableWBXML" sync option. WBXML is used by default, but for
debugging disabling it might be useful: dumping WBXML doesn't seem
to work reliably.

Most Client::Sync tests use the default encoding, usually WBXML unless
changed via CLIENT_TEST_XML=1. Client::Sync::*::testItemsXML always
uses XML and Client::Sync::*::testItems always WBXML.
2009-03-25 14:43:49 +01:00
Patrick Ohly 92d6ac11aa testing: nicer printing of before/after comparison
Use the ClientTest::compare() helper function and change it so that
it invokes "synccompare", as needed when using it in SyncEvolution.
Improved it so that it prints the synccompare command after a failure
and adds a line break before it.
2009-03-25 14:43:49 +01:00
Patrick Ohly 11e10f2556 testing: added Client::Sync::*::testConversion
The conversion test checks whether information is lost and/or modified
when converting the test items into the field list defined in the Synthesis
XML config. For that it converts into the field list and back, then compares
against the original test item file with synccompare.

Because a valid Synthesis session is necessary, this test hooks into
running a sync session via a callback that is triggered by the first
Synthesis progress event. It then aborts the session without contacting
the server.

boost::bind() with a reference should have worked (?), but didn't:
the bound function did not update the variable it was bound to.
Using a pointer worked.
2009-03-25 14:43:48 +01:00
Patrick Ohly 5aaf6a1a24 testing: pass parameters for syncing as struct, renamed function
Passing as struct makes it easier to extend. doSync() instead of just sync() is easier to search for.
2009-03-25 14:43:48 +01:00
Patrick Ohly 90cfb6b702 testing: when catching a CppUnit exception after a sync, report the original error instead of 'unexpected exception' 2009-03-25 14:43:48 +01:00
Patrick Ohly 642585610b testing: print CPPUnit failures directly after each failed test 2009-03-25 14:43:47 +01:00
Patrick Ohly 9c38b5c034 compiler warnings: check result of log writing 2009-03-25 14:43:47 +01:00
Patrick Ohly dc38ab0ee9 compiler warning: brackets around && in || 2009-03-25 14:43:47 +01:00
Patrick Ohly d71a296525 dist: fixed distcheck, bundle Synthesis
When --with-synthesis-src is used, then the Synthesis source code is compiled
automatically and included in a .tar.gz.

Added some missing EXTRA_DIST files.
2009-03-25 14:43:44 +01:00
Patrick Ohly 0262e2bfd2 HTPP: set user agent string again 2009-03-25 14:43:44 +01:00
Patrick Ohly c36531b37b testing: silence diffs by enabling Synthesis suppressions 2009-03-25 14:43:44 +01:00
Patrick Ohly b767004bc8 testing: relaxed testLinkedItemsInsertBothUpdateChild/Parent
A sync source may also report the other item as updated.
Sometimes it is not possible to update one without touching the other.
2009-03-25 14:43:42 +01:00
Patrick Ohly 875704832a testing: added checking of sync source result and sync mode 2009-03-25 14:43:38 +01:00
Patrick Ohly de2cc3c0f5 testing: re-enabled SyncReport and checking it 2009-03-25 14:43:38 +01:00
Patrick Ohly 8e9512cd20 testing: fixed log handling during Client::Sync
The logdir is now overridden so that all files (client.log, message
dumps, Synthesis logs) are written in a subdirectory names after
the current test. A <test>.log file captures all output written
outside of the sync itself.
2009-03-25 14:43:37 +01:00
Patrick Ohly 52ed0258d3 testing: one log file is created per test
The file is named after the current test, with : replaced by underscores.
This gets all log message outside of sync sessions. Those are still written into
separate files whose name needs to be adapted.
2009-03-25 14:43:36 +01:00
Patrick Ohly 41aaec7eb2 testing: compiles and runs again, but output redirection is not working yet 2009-03-25 14:43:36 +01:00
Patrick Ohly befc89bc9e license: clarified default license and exceptions 2009-03-25 14:43:35 +01:00
Patrick Ohly fcbf8c72aa interrupted sync tests: added comparison against reference files 2009-03-25 14:43:32 +01:00
Patrick Ohly 1170ba8b38 ClientTest: better infrastructure for data file comparisons
File names now only contain a single underscore instead of
multiple ones. The compare functions can be called so that they
return the result instead of throwing an assertion (useful for
doing multiple comparisons and then checking the result).
The synccompare Perl script is told to print the file names
that it is comparing.
2009-03-25 14:43:31 +01:00
Patrick Ohly c5900a63a1 interrupted sync testing: completed the set of changes that can be applied to client and server 2009-03-25 14:43:31 +01:00
Patrick Ohly c74a620257 ClientTest: infrastructure for removing and updating specific items 2009-03-25 14:43:31 +01:00
Patrick Ohly 69d5dc588b interrupted sync testing: maxmsgsize == 1 indicates that caller wants to interrupt while receiving server's reply
The Curl transport agent sets a very low segment and receive
buffer size so that the server cannot send more data than the client
is going to accept.
2009-03-25 14:43:31 +01:00
Patrick Ohly bda97ea2b6 interrupted sync testing: added CLIENT_TEST_INTERRUPT_AT to select where to interrupt
Set the CLIENT_TEST_INTERRUPT_AT env variable to a message number
>= 0 to execute one uninterrupted run and then interrupt at that
message.
2009-03-25 14:43:30 +01:00
Patrick Ohly beb9d7887f ClientTest: test resuming a synchronization after a disconnect
Works for different situations (client has changes, server has
changes, both have changes) as well as for disconnects after every
single message in the synchronization. Uses the same infrastructure
as the other Client::Sync tests and therefore can be used to test
normal clients.

Only adding new items on client or server is currently implemented:
Client::Sync::vcard21::Retry::testInterruptResumeServerAdd
Client::Sync::vcard21::Retry::testInterruptResumeClientAdd

Results are not yet compared against outcome of uninterrupted
sync.
2009-03-25 14:43:30 +01:00
Patrick Ohly 3489ad43af testing: allow accumulating log prefixes dynamically 2009-03-25 14:43:30 +01:00
Patrick Ohly 6869110b3d testing: enhanced infrastructure (LUIDs)
Changed the utility functions so that they pass around and use
LUIDs. This allows building more complex tests which need to
modify specific items.
2009-03-25 14:43:30 +01:00
Patrick Ohly 807c835ccf tests: split big test into smaller ones
This helps g++ to complete compilation without requiring huge amount of memory.

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@26637 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:29 +01:00
Patrick Ohly c344d25d8d fixed some (incorrect) gcc warnings about uninitialized vars, relaxed semantic checks in testLinkedItems
In testLinkedItems the SyncSource is now allowed to list a linked item as update
when the peer item (parent of child or child of parent) is
deleted/modified/added in the wrong order.

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@25760 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:29 +01:00
Patrick Ohly cbaee2b651 added support for TZID renaming
Evolution and SyncEvolution rename TZIDs by appending a number if the
content of the VTIMEZONE conflict (http://bugzilla.gnome.org/show_bug.cgi?id=528902).
This patch ignores differences caused by this valid transformation.

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@25464 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:29 +01:00
Patrick Ohly 22101a83d0 fixed detached event testing (ical20)
- the parent events accidentally had a RECURRENCE-ID, which turned them into
  specific instances
- clarified that some of the tests are too strict: child items without a parent
  are problematic and not necessarily supported by client (Evolution) and server
  (ScheduleWorld) => these tests can be disabled via -DLINKED_ITEMS_RELAXED_SEMANTIC=0

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@25438 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:29 +01:00
Patrick Ohly 577124efe3 use SyncSource::removeAllItems() instead of loop + deleteItem()
There are two reasons for this change:
- the new API call would not be covered otherwise
- it is required for testing detached recurrences, because sources
  might be forced to delete children together with the parent;
  this caused the loop to fail prematurely

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@25437 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:28 +01:00
Patrick Ohly e8c62fc6fa VTIMEZONE and TZID do not have to be preserved verbatim as long as the replacement is still representing the same timezone. Reduce TZIDs which follow the Olson database pseudo-standard to their location part and strip the VTIMEZONE - makes the diff shorter, too.
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@24215 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:28 +01:00
Patrick Ohly 7bcb8f00ca ical20: added testing of detached recurrences
Two VEVENTs were added to ical20.ics where one represents
the main event with recurrence rule and the other an exception
from the meeting series.

The new Sync::Source::ical20::testLinkedItems test covers
various different operations involving such two related VEVENTs
(adding in arbitrary order, updating/deleting one or both events, etc.).

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@24122 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:28 +01:00
Patrick Ohly 693e226f3f fixed compiler warnings in header files (found by g++ -Wall when compiling client)
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@23258 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:28 +01:00
Patrick Ohly 5a6f6f79db order of categories is irrelevant, ignore changed order by sorting (ScheduleWorld recently started to reorder categories)
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@22936 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:28 +01:00
Patrick Ohly f00f790387 my.funambol.com no longer stores 'preferred' phone number
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@22862 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:27 +01:00
Patrick Ohly 11a3fb0d59 Synthesis server returns SUMMARY also as DESCRIPTION unless DESCRIPTION is present: always sends a DESCRIPTION to avoid diffs
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@22571 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:27 +01:00
Patrick Ohly d27aa59e09 ignore that Synthesis does not support some iCalendar 2.0 properties (SEQUENCE, TRANSP, ORGANIZER, VALARM, ATTENDEE parameters)
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@22570 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:27 +01:00
Patrick Ohly 966e895492 also supported N;ENCODING=QUOTED-PRINTABLE: when normalizing for Synthesis server
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@22366 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:27 +01:00
Patrick Ohly c85b4349ae extended Sync::testRefreshSemantic: a two-way sync after a refresh-from-server should not transmit any changes
Problematic in this case might be items deleted by the client automatically
during the refresh-from-server.

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@22365 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:27 +01:00
Patrick Ohly 6e5f9a8e70 added obligatory endSync() calls: found when testing SyncEvolution's TrackingSyncSource whereas other sources happened to work without them
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@22133 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:26 +01:00
Patrick Ohly 33c7ad7b44 extended LocalTests::testChanges and run SyncTests::testManyItems with message size limit
LocalTests::testChanges() now also checks some more sequences of add/update and add/delete/add.
SyncTests::testManyItems() can generate large messages, which fails with the Synthesis
server because it expects clients to obey the message size limit. Run test with fixed,
small enough limit as workaround.

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/branches/b_v65/3x/client-api/native@21859 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:26 +01:00
Patrick Ohly 25603052db ignore differences due to added/removed line breaks at end of description (some servers do that and it does not really matter)
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/branches/b_v65/3x/client-api/native@21763 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:26 +01:00
Patrick Ohly 475ed7cdfc - less aggressive capitalization: only apply this to TYPE - simplified one regex (splitting TYPE=foo,bar)
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/branches/b_v65/3x/client-api/native@21751 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:26 +01:00
Patrick Ohly 7300a666e4 extended test data and synccompare to use/handle vCard 3.0 with mixed-case parameters
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/branches/b_v65/3x/client-api/native@21573 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:26 +01:00
Patrick Ohly 953db52a5b fixed invalid parameters for CPPUNIT macro in the 'timed out' error situation
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/branches/b_v65/3x/client-api/native@21452 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:26 +01:00
Andrea Toccalini 90eb9f7132 updated license to AGPL
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/branches/b_v65/3x/client-api/native@21417 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:25 +01:00
Patrick Ohly b418e19ee8 Documented some of the environment variables checked by the script and added some more to control some of the hard-coded strings/return codes:
CLIENT_TEST_SERVER=funambol|scheduleworld|egroupware|synthesis
      Enables code which simplifies the text files just like
      certain well-known servers do. This is useful for testing
      to ignore the data loss introduced by these servers or (for
      users) to simulate the effect of these servers on their data.

CLIENT_TEST_CLIENT=evolution|addressbook (Mac OS X/iPhone)
      Same as for servers this replicates the effect of storing
      data in the clients.

CLIENT_TEST_LEFT_NAME="before sync"
CLIENT_TEST_RIGHT_NAME="after sync"
CLIENT_TEST_REMOVED="removed during sync"
CLIENT_TEST_ADDED="added during sync"
      Setting these variables changes the default legend
      print above the left and right file during a
      comparison.

CLIENT_TEST_COMPARISON_FAILED=1
      Overrides the default error code when changes are found.

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/branches/b_v65/3x/client-api/native@20792 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:25 +01:00
Patrick Ohly 36efaad474 myFUNAMBOL looses some data that was preserved by Funambol 3.0. synccompare.pl now simplifies the test data so that the Client::Sync::vcard21::testItems passes again. For an example of what gets lost see the failed test:
BEGIN:VCARD                              BEGIN:VCARD
N:Doe;John                               N:Doe;John
ADR;TYPE=HOME:Test Box #1;;Test Drive    ADR;TYPE=HOME:Test Box #1;;Test Drive
  1;Test Village;Lower Test County;123     1;Test Village;Lower Test County;123
 45;Testovia                              45;Testovia
ADR;TYPE=PARCEL:Test Box #3;;Test Dri  | ADR;TYPE=HOME:Test Box #3;;Test Drive
 ve 3;Test Megacity;Test County;12347; |   3;Test Megacity;Test County;12347;Ne
 New Testonia                          |  w Testonia
ADR;TYPE=WORK:Test Box #2;;Test Drive    ADR;TYPE=WORK:Test Box #2;;Test Drive
  2;Test Town;Upper Test County;12346;     2;Test Town;Upper Test County;12346;
 Old Testovia                             Old Testovia
BDAY:2006-01-08                          BDAY:2006-01-08
CALURI:calender                        <
CATEGORIES:TEST                          CATEGORIES:TEST
EMAIL;TYPE=HOME;X-EVOLUTION-UI-SLOT=2  | EMAIL:john.doe@other.world
 :john.doe@home.priv                   | EMAIL;TYPE=HOME:john.doe@home.priv
EMAIL;TYPE=WORK;X-EVOLUTION-UI-SLOT=1  | EMAIL;TYPE=WORK:john.doe@work.com
 :john.doe@work.com                    <
EMAIL;X-EVOLUTION-UI-SLOT=3:john.doe@  <
 other.world                           <
EMAIL;X-EVOLUTION-UI-SLOT=4:john.doe@  <
 yet.another.world                     <
FBURL:free/busy                        <
NICKNAME:user1                           NICKNAME:user1
NOTE:This is a test case which uses a    NOTE:This is a test case which uses a
 lmost all Evolution fields.              lmost all Evolution fields.
ORG:Test Inc.;Testing                    ORG:Test Inc.;Testing
ROLE:professional test case              ROLE:professional test case
TEL;TYPE=CAR;X-EVOLUTION-UI-SLOT=7:ca  | TEL;TYPE=CAR:car 7
 r 7                                   | TEL;TYPE=CELL:mobile 3
TEL;TYPE=CELL;X-EVOLUTION-UI-SLOT=3:m  | TEL;TYPE=FAX;TYPE=HOME:homefax 5
 obile 3                               | TEL;TYPE=FAX;TYPE=WORK:businessfax 4
TEL;TYPE=FAX;TYPE=HOME;X-EVOLUTION-UI  | TEL;TYPE=HOME:home 2
 -SLOT=5:homefax 5                     | TEL;TYPE=PAGER:pager 6
TEL;TYPE=FAX;TYPE=WORK;X-EVOLUTION-UI  | TEL;TYPE=PREF:primary 8
 -SLOT=4:businessfax 4                 | TEL;TYPE=WORK:business 1
TEL;TYPE=HOME;X-EVOLUTION-UI-SLOT=2:h  <
 ome 2                                 <
TEL;TYPE=PAGER;X-EVOLUTION-UI-SLOT=6:  <
 pager 6                               <
TEL;TYPE=PREF;X-EVOLUTION-UI-SLOT=8:p  <
 rimary 8                              <
TEL;TYPE=WORK;X-EVOLUTION-UI-SLOT=1:b  <
 usiness 1                             <
TITLE:Senior Tester                      TITLE:Senior Tester
URL:http://john.doe.com                  URL:http://john.doe.com
VERSION:3.0                              VERSION:3.0
X-AIM;X-EVOLUTION-UI-SLOT=1:AIM JOHN   <
X-EVOLUTION-ANNIVERSARY:2006-01-09     <
X-EVOLUTION-ASSISTANT:John Doe Junior  <
X-EVOLUTION-BLOG-URL:web log           <
X-EVOLUTION-FILE-AS:Doe\, John           X-EVOLUTION-FILE-AS:Doe\, John
X-EVOLUTION-MANAGER:John Doe Senior    <
X-EVOLUTION-SPOUSE:Joan Doe            <
X-EVOLUTION-VIDEO-URL:chat             <
X-GROUPWISE;X-EVOLUTION-UI-SLOT=4:GRO  <
 UPWISE DOE                            <
X-ICQ;X-EVOLUTION-UI-SLOT=3:ICQ JD     <
X-YAHOO;X-EVOLUTION-UI-SLOT=2:YAHOO J  <
 DOE                                   <
END:VCARD                                END:VCARD
-------------------------------------------------------------------------------
BEGIN:VCARD                              BEGIN:VCARD
N:breaks;line                            N:breaks;line
ADR;TYPE=HOME:;Address Line 2\nAddres  | ADR;TYPE=HOME:;;Address Line 1
 s Line 3;Address Line 1               <
NICKNAME:user7                           NICKNAME:user7
NOTE:This test case uses line breaks.    NOTE:This test case uses line breaks.
  This is line 1.\nLine 2.\n\nLine bre     This is line 1.\nLine 2.\n\nLine bre
 aks in vcard 2.1 are encoded as =0D=0    aks in vcard 2.1 are encoded as =0D=0
 A.\nThat means the = has to be encode    A.\nThat means the = has to be encode
 d itself...                              d itself...
VERSION:3.0                              VERSION:3.0
X-EVOLUTION-FILE-AS:breaks\, line        X-EVOLUTION-FILE-AS:breaks\, line
END:VCARD                                END:VCARD

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/branches/b_v65/3x/client-api/native@20761 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:25 +01:00
Patrick Ohly 8fb9355a7e During the transition from SyncEvolution to the C++ client library the NUM_ITEMS setting got lost: all tests which create a configurable amount of items (Source::testManyChanges, Sync::testManyItems) unintentionally ran with zero items, i.e. didn't actually test anything.
Added and documented CLIENT_TEST_NUM_ITEMS which controls the number
of items to create.

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/branches/b_v65/3x/client-api/native@20692 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:25 +01:00
Patrick Ohly 2fa2afd09d - suppress acceptable modification when using the Mac OS X address book: some properties and types not supported by it - find perl in the PATH by invoking it via /usr/bin/env (which hopefully is at that place): required by iPhone
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@20310 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:24 +01:00
Patrick Ohly 2297a2b96b The ComplexUpdate test failed when multiple sync sources were active, but only some had a complex item to update with. Now the simple update item is used for those sources.
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@20309 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:24 +01:00
Patrick Ohly 73eff8c05e make update() utility function a bit more flexible: the checking stage is optional now
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@17611 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:24 +01:00
Patrick Ohly 5c94e26be3 separate patch to fix indention
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@17603 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:24 +01:00
Patrick Ohly 3f95bf1734 made it possible for clients to not just configure existing tests, but also add their own ones
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@17602 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:24 +01:00
Patrick Ohly 8de15bab34 same as for events: CATEGORIES need to be separated with plain commas
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@17562 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:23 +01:00
Patrick Ohly 09f11d6891 fixed comma separation in CATEGORIES (exported with \, by Evolution, but that is broken); added some more CATEGORIES properties
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@17537 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:23 +01:00
Patrick Ohly d2f5cd041f avoid irrelevant differences due to extra white space, generalized X-WSS removal
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@17386 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:23 +01:00
Matteo Vitolo 66e4de9766 copyright updated
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@17292 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:23 +01:00
Patrick Ohly 2389b1eeea remove X-MOZILLA-HTML:FALSE because it (almost) has the same semantic as no X-MOZILLA-HTML
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@16864 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:23 +01:00
Patrick Ohly 76ee31b70b avoid patching FALSE/TRUE in test suite sources when installing them: the same words also occur in the test data strings embedded in the source code and patching those is incorrect
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@16774 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:22 +01:00
Patrick Ohly 02d377d5dc client-test Client::Sync did not execute the tests with more than once source because the tests were registered in two different nodes, both called Client::Sync - CPPUnit does not seem to handle that; fixed by keeping the node name unique
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@16344 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:22 +01:00
Patrick Ohly 465d9b2861 insert additional lines after the first line of VJOURNAL because it might be used as the summary and thus should not be modified
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@16228 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:22 +01:00
Patrick Ohly a89e99adfb A little bit more sane datatype handling of items inserted by test frame work: the type is empty in insert() and update() now and "raw" in importItem(). The "raw" type is historical and it might be possible to remove it.
A really clean solution would make the mime type of test data
configurable and use that during all imports/updates.

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@16227 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:22 +01:00
Patrick Ohly ac4af8b0ab added some (preliminary) support for iCalendar 2.0 journal entries
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@16226 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:21 +01:00
Patrick Ohly 1d3ad69168 the check for vCard 2.1 was not correct and always enabled quoted-printable encoding
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@16153 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:21 +01:00
Patrick Ohly a3eeeb22f5 Avoid line breaks at the end of a NOTE: some servers remove this because some phones add line breaks during each sync or edit (?). This is a minor change to items that should break automated testing.
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@16105 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:21 +01:00
Patrick Ohly 329c543e13 updated Doxygen documentation about client testing
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@16044 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:21 +01:00
Patrick Ohly cf166e4717 deleteAll() did not always work because the initial sync was TWO_WAY and not SLOW
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@16010 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:21 +01:00
Patrick Ohly 3df51b826c additional check to avoid error messages if tput itself fails
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@15823 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:20 +01:00
Patrick Ohly f3d7fe1733 pass the sync result to CheckSyncReport so that it can be taken into account when checking the result
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@15792 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:20 +01:00
Patrick Ohly ba58cb4ad0 replaced invocation of external diff/mktemp tools with pure Perl diff
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@15743 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:20 +01:00
Patrick Ohly ab5dd9caaf added a test case for the Funambol 3.0 parser bug (can be used to verify workarounds in clients)
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@15741 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:20 +01:00
Patrick Ohly 02333c6b39 first draft of API documentation via Doxygen
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@15371 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:19 +01:00
Patrick Ohly b97d0be337 fixed compilation if --enable-unit-tests is used without --enable-integration-tests
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@14903 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:19 +01:00
Patrick Ohly c20be8c554 moved common code for printing a SyncReport into the SyncReport class itself
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@14846 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:19 +01:00
Patrick Ohly 2f69d6ba94 - added checking of the SyncReport - changed expectations for refresh-from-server sync: number of deleted items depends on SyncSource implementation and cannot be checked - make LOCATION unique in calendar events to avoid having events merged by Funambol server
=> testing passed with Funambol 3.0 using:
   CLIENT_TEST_DELAY=5 \
   CLIENT_TEST_LOG=/scratch/Funambol/ds-server/logs/funambol_ds.log \
   CLIENT_TEST_SOURCES=vcal10,vcard21 \
   CLIENT_TEST_SERVER=funambol \
       ./client-test Client::Sync::vcal10_vcard21

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@14292 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:19 +01:00
Patrick Ohly cca9cd3c13 - added vcard21/vcal10 for Funambol 3.0 server - server URI is now set automatically when creating client config; works for vcard21/vcal10 with Funambol 3.0 and vcard30/ical20 with ScheduleWorld
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@14183 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:18 +01:00
Patrick Ohly 272317f705 ignore some minor differences (TYPE shortcuts, truncated ORG) and one bug (=0A instead of =0D=0A), found when testing against Funambol 3.0 with vcal10/vcard21
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@14182 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:18 +01:00
Patrick Ohly 04683c2b1c removed TYPEs which are too complex for Funambol 3.0 server
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@14181 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:18 +01:00
Patrick Ohly 48444fc82a vCard 2.1 contacts generated by vcardconverter from vcard30.vcf, non-2.1 properties stripped manually (FBURL, CALURL)
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@14180 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:18 +01:00
Patrick Ohly 8875ce2d18 removed VEVENTs which caused problems with Funambol 3.0 server
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@14178 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:18 +01:00
Patrick Ohly a675170167 initial revision generated by ScheduleWorld from ical20.ics
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@14177 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:18 +01:00
Patrick Ohly 1b0a313b8b added syncing of many sources at once (still to be tested)
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@14153 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:17 +01:00
Patrick Ohly 9647e7c2b7 solved Windows compile problems
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@12373 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:17 +01:00
Patrick Ohly f89bdcb76f sync tests now work on Linux: - implemented sync() method using FILESyncSource - clarified naming of clients and different change tracking
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@12301 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:17 +01:00
Patrick Ohly af7e085f25 check for the same environment variable as client-test
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@12299 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:17 +01:00
Patrick Ohly 1b3801011f Implemented change tracking in FILESyncSource. Fixed some portability problems (e.g. %ls with char parameter), ensured that everything still compiles on Windows. RawFILESyncSource now passes all local source tests on Linux, but syncing is still not implemented.
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@12097 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:17 +01:00
Patrick Ohly a3137b52e7 Added real sync testing, using RawFILESyncSource to store items locally. Compiles and runs on Linux, but tests mostly fail because FILESyncSource supports no change tracking yet.
See test/client-test.cpp as an example how the existing tests can
be hooked up with other SyncSource implementations. The sync() function
still needs to be implemented.

git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@12093 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:16 +01:00
Patrick Ohly b76e2dcd31 fixed incorrect copyright
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@12091 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:16 +01:00
Patrick Ohly ccedc74a64 finished porting all tests from SyncEvolution test suite, improved log file handling
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@11864 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:16 +01:00
Patrick Ohly 9432e753c2 fixed formatting slightly, added real sync tests
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@11840 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:16 +01:00
Patrick Ohly ff6dc24714 finished local tests
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@11805 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:15 +01:00
Patrick Ohly 768464c846 added a C++ client test framework, moved test runner to new 'test' directory
git-svn-id: https://core.forge.funambol.org/svn/core/top-level/trunk/3x/client-api/native@11726 e8e8ed6c-164c-0410-afcf-9e9a7c7d8c10
2009-03-25 14:43:15 +01:00
Patrick Ohly 04a2d94c4a tests: removed in preparation for importing complete history
The branch 'Funambol' contains code developed by Patrick
Ohly in the Funambol Subversion repository and contributed
to Funambol as part of the Funambol Contributor Agreement.

It will be merged back into the SyncEvolution repository,
which is allowed by that agreement because

   Funambol grants to you [the contributor] a non-exclusive, perpetual, irrevocable, worldwide, royalty free,
   transferable copyright license to reproduce, prepare derivative works of, distribute
   (internally and externally, in object code and, if included in Your Contributions, source
   code form), use, publicly perform and publicly display Your Contributions, with the right
   to sublicense all of these rights through multiple tiers of sublicensees.
2009-03-12 17:10:48 +01:00
Patrick Ohly 9bbd6c92ac on x86 also build lpia .deb
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@772 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-12-07 20:02:14 +00:00
Patrick Ohly a252eb996a added ConfigServer_add_client
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@771 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-12-07 20:01:50 +00:00
Patrick Ohly d93c67c2de checking out client library is optional now (done automatically by newer SyncEvolution configure script)
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@746 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-10-08 20:53:58 +00:00
Patrick Ohly 36e61873a6 new suppressions for Evolution libs
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@738 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-26 16:16:21 +00:00
Patrick Ohly 14a59ea744 speed up testing by reducing the default delay in Evolution calendar/task/text sync sources
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@737 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-26 16:15:35 +00:00
Patrick Ohly 3b88d491c8 enable those linked item tests that 'dumb' sources can pass
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@735 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-18 20:31:37 +00:00
Patrick Ohly bb23c15f26 only invoke client-test once; suppress known SW 'new client' problem; test 'text' source with Funambol
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@727 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-17 08:19:45 +00:00
Patrick Ohly 276eccf910 testLinkedItemsInsertBothUpdateParent: updating parent may also update child
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@722 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-16 07:37:25 +00:00
Patrick Ohly d4cd8002ce calendar synchronization with Evolution Exchange Connector works again
CALOBJ_MOD_THIS for parent items caused problems. A *long* delay after
a sync was needed, otherwise the Connector returned garbage during
further accesses (e.g., old child event instead of the updated one).

Some code cleanup (creating ItemID from LUID).

Temporarily forked the client test (introduced update items for child/parent,
relaxed semantic selectable at runtime).


git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@719 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-16 07:34:17 +00:00
Patrick Ohly 58a96aa60d copied r_v70ga from C++ client lib because some changes will be necessary
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@718 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-08-16 07:31:55 +00:00
Patrick Ohly 0d580b83bc added plenty of suppressions for problems only found when running code linked against 2.22.x
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@663 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-07-10 18:12:04 +00:00
Patrick Ohly 26633a6a27 added the possibility to run a setup script as part of each test
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@662 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-07-10 18:09:36 +00:00
Patrick Ohly f3c0b7c2ba added MemoToo
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@647 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-06-29 17:59:27 +00:00
Patrick Ohly e08bed66cb added --prebuilt: testing with precompiled SyncEvolution
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@636 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-06-26 20:29:56 +00:00
Patrick Ohly b35f44f984 also test SyncEvolution unit tests in addition to testing framework tests
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@608 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-05-02 17:22:44 +00:00
Patrick Ohly e45df98d09 suppressed all known leaks with trunk from April 1st
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@607 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-05-02 17:22:05 +00:00
Patrick Ohly c9927c1f5c recreated Evolution suppressions after fixing some leaks caused by SyncEvolution
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@539 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-03-25 19:53:50 +00:00
Patrick Ohly 7538b19553 fixed some memory leaks for results of e_book_get_contacts/changes and e_cal_get_object_list_as_comp/e_cal_get_changes
The API documentation of these calls doesn't say so explicitly, but it
seems that a combination of g_object_unref()/g_free()/g_list_free() is
necessary. Rewrote the eptr smart pointer so that different deleter
functions can be selected as template parameters.


git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@521 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-03-18 13:36:59 +00:00
Patrick Ohly e7ba16d162 valgrind suppression rules
The files were originally created for:
sys = Debian Etch
evo = Evolution trunk ~ 2.22
client = Funambol C++ client library post 6.5


git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@520 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-03-16 08:48:26 +00:00
Patrick Ohly b141163fd0 fixed rebuild of Evolution trunk: install stamp must be removed, otherwise it won't reinstall
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@519 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-03-16 08:48:11 +00:00
Patrick Ohly c1c17699e5 check out SyncEvolution from Subversion
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@502 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-02-13 22:28:53 +00:00
Patrick Ohly b6d33d15cc added building of Evolution trunk
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@501 15ad00c4-1369-45f4-8270-35d70d36bdcd
2008-02-11 21:28:32 +00:00
Patrick Ohly d3ab8d6a9c fixed building of .deb (docdir and description)
- the new checkinstall --docdir=: syntax is used to avoid adding the name twice
- description-pak was not created and thus missing from package


git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@476 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-12-17 18:58:55 +00:00
Patrick Ohly c5b4ed32c6 added the possibility to run under valgrind
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@465 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-12-01 21:07:43 +00:00
Patrick Ohly 5ddc85129e - changed configure/build so that it also builds .deb (default prefix + DESTDIR for install)
- updated config for servers


git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@461 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-11-30 20:14:01 +00:00
Patrick Ohly 0c6e2626a3 ClientTest.cpp and synccompare.pl are back in C++ library
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@436 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-10-25 17:15:26 +00:00
Patrick Ohly a121171404 # pushed sources back into SyncML client library
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@431 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-10-23 21:20:18 +00:00
Patrick Ohly c315a9216b # fixed distcheck problem
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@427 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-10-18 08:03:45 +00:00
Patrick Ohly f665c5abb7 perl is not installed as /usr/bin/perl on iPhone: let /usr/bin/env find it
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@415 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-10-14 14:02:46 +00:00
Patrick Ohly 1a0568ead2 ScheduleWorld no longer drops department/office
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@411 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-10-13 20:23:44 +00:00
Patrick Ohly f4d33fd972 temporary fork of 1.25: handle testComplexUpdate where some (but not all) sources have a complex update item
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@408 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-10-12 18:02:42 +00:00
Patrick Ohly c90a742b52 added custom vcard 3.0 <-> AddressBook conversion: needed to make vcard representation close to what SyncML servers understand
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@386 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-08-24 21:27:42 +00:00
Patrick Ohly 78220c6df6 # ignore known problems
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@377 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-07-09 20:42:27 +00:00
Patrick Ohly 999a1956b1 # updated to new test system, added some command line parameters
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@376 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-07-09 20:29:00 +00:00
Patrick Ohly c4600802f3 fixed problem of deleting read-only install directories
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@310 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-01-20 14:19:09 +00:00
Patrick Ohly c95279ab81 added cross-compilation
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@308 15ad00c4-1369-45f4-8270-35d70d36bdcd
2007-01-11 20:34:20 +00:00
Patrick Ohly d325c9316a added building of release packages, adapted to some more known server limitations
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@287 15ad00c4-1369-45f4-8270-35d70d36bdcd
2006-11-12 12:42:11 +00:00
Patrick Ohly 13439bd127 allow to build arbitrary combinations of client library and SyncEvolution
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@274 15ad00c4-1369-45f4-8270-35d70d36bdcd
2006-11-01 16:02:59 +00:00
Patrick Ohly bd029263ef filter out private information from logs, added --tag parameter
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@267 15ad00c4-1369-45f4-8270-35d70d36bdcd
2006-10-28 08:52:18 +00:00
Patrick Ohly 938a5c369b removed default values, added egroupware testing, improved log file copying
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@254 15ad00c4-1369-45f4-8270-35d70d36bdcd
2006-09-11 17:40:51 +00:00
Patrick Ohly 1f89524bc2 add number to preserve ordering of actions
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@230 15ad00c4-1369-45f4-8270-35d70d36bdcd
2006-08-27 20:38:39 +00:00
Patrick Ohly 0337ed260e added --skip option, made reporting a bit nicer
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@229 15ad00c4-1369-45f4-8270-35d70d36bdcd
2006-08-27 20:11:21 +00:00
Patrick Ohly 5da1505677 executes CVS checkout, compilation and testing automatically
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@227 15ad00c4-1369-45f4-8270-35d70d36bdcd
2006-08-26 15:44:06 +00:00
Patrick Ohly 1301d3edac preparations for a release as 'SyncEvolution'
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@32 15ad00c4-1369-45f4-8270-35d70d36bdcd
2006-03-11 19:23:43 +00:00
Patrick Ohly a42a23b9c6 added testing of syncing
git-svn-id: https://zeitsenke.de/svn/SyncEvolution/trunk@12 15ad00c4-1369-45f4-8270-35d70d36bdcd
2005-12-10 19:16:02 +00:00