Re: [Evolution-hackers] "make check" failing in the e-d-s gnome-2-32



On Tue, 2011-06-07 at 09:08 +0200, Murray Cumming wrote:
> In the gnome-2-32 branch, several "make check" tests fail intermittently
> for me, as seen below. I'm running them in jhbuild.
> 
> This seems to be fixed in the gnome-3-0 branch and in the master branch.
> Does anyone know what commit fixed it, so I could backport it?

They were "fixed" by disabling quite a few of those tests.

In Evolution 2.32, in order to facilitate the move to XDG base dirs, I
changed the URI format for local address book and calendar sources from:

    file:/absolute/path/to/storage/${ESOURCE_UID}

to simply:

    local:${ESOURCE_UID}

(where ESOURCE_UID is the unique ID string of the ESource object)

This new format obscures the local storage path being used and lets the
file backend decide the storage path, which made migrating the data out
of ~/.evolution much easier, but made it harder to write tests because
now you can't give it a custom storage location through the URI string.

In other words, URIs like "local:/tmp/ebook-test-MN8AWV/" are invalid
because there is no ESource UID named "/tmp/ebook-test-MN8AWV/", which
is why the tests are failing.

Unfortunately I never went back and fixed the tests, but instead just
silenced them since by that point I had already started on a rewrite of
the ESource API which eliminates these URI strings entirely.  So the
tests in 3.x are still broken.  I was going to repair the tests after
the new API is completed.

In order to fix the tests properly under the current API, the test
harness would need to override the XDG_DATA_HOME environment variable to
point to some directory in /tmp/ebook-test-XXXXXX before running the
tests.  The file backend would then fill in the rest of the directory
structure using XDG_DATA_HOME as the base:

    /tmp/ebook-test-XXXXXX/evolution/addressbook/${ESOURCE_UID}


Matthew Barnes



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]