Test #7 in t9200-git-cvsexportcommit fails

4 messages, 2 authors, 2016-06-15 · open the first message on its own page

Test #7 in t9200-git-cvsexportcommit fails

From: Jason Sewall <hidden>
Date: 2016-06-15 22:43:23

This test fails for me on the current head (pulled just now) and where
the test was introduced (e86ad71fe).

All other tests pass.

I know almost nothing about how CVS works internally, so I don't have
any insight as to the cause of this problem - all I can see is that
the contents of CVS/Entries has the 'with spaces' files at 1.1 instead
of the expect 1.2.

I'm happy to provide more information if you can tell me how to get
it. In particular, I'd like to tell you about my version of perl-cvs
(or whatever it's called) but I have no idea how to do that...

Jason

P.S. I don't use this part of git at all, so this is not a priority
for me. I am using Fedora 7, which is definitely a mainstream distro,
so I imagine others might have this problem too.

Re: Test #7 in t9200-git-cvsexportcommit fails

From: Alex Riesen <hidden>
Date: 2016-06-15 22:43:23

Jason Sewall, Sun, Jul 22, 2007 21:41:53 +0200:
This test fails for me on the current head (pulled just now) and where
the test was introduced (e86ad71fe).
Aahh, the test where CVS failed to commit sub-second changes...
It never really succeeded.
P.S. I don't use this part of git at all, so this is not a priority
for me. I am using Fedora 7, which is definitely a mainstream distro,
so I imagine others might have this problem too.
Just disable it:

    $ echo "export GIT_SKIP_TESTS = t9200" >>config.mak

It'll never work, cvs does not commit changes made during one second,
as they have the same timestamp.

If you feel interested, try investigating the test by running it with
"-d -v", like this:

    $ cd t
    $ ./t9200-git-cvsexportcommit.sh -d -v -i

You'll have to run it multiple times, probably: the problem is
sometimes timing dependent and changed output conditions may make it
go away for a while. Just continue trying.

Re: Test #7 in t9200-git-cvsexportcommit fails

From: Jason Sewall <hidden>
Date: 2016-06-15 22:43:23

It'll never work, cvs does not commit changes made during one second,
as they have the same timestamp.
Why not add a delay in there, like this:

id=$(git rev-list --max-count=1 HEAD) && sleep 2

It makes the test work for me.

Jason

Re: Test #7 in t9200-git-cvsexportcommit fails

From: Alex Riesen <hidden>
Date: 2016-06-15 22:43:23

Jason Sewall, Sun, Jul 22, 2007 22:49:19 +0200:
quoted
It'll never work, cvs does not commit changes made during one second,
as they have the same timestamp.
Why not add a delay in there, like this:

id=$(git rev-list --max-count=1 HEAD) && sleep 2

It makes the test work for me.
It looks just like another reason to disable it. It is not like the
_git_ functionality which is used by git-cvsexportcommit is not
already tested elsewhere.

Note that I do _NOT_ suggest disabling it by default, but a bit of
warning would probably do some good:
diff --git a/t/t9200-git-cvsexportcommit.sh b/t/t9200-git-cvsexportcommit.sh
index 4efa0c9..e5e9e36 100755
--- a/t/t9200-git-cvsexportcommit.sh
+++ b/t/t9200-git-cvsexportcommit.sh
@@ -6,6 +6,12 @@ test_description='CVS export comit. '
 
 . ./test-lib.sh
 
+echo >&2
+echo >&2 "This test is very timing dependent and may fail."
+echo >&2 "If you don't need git-cvsexportcommit you're better off"
+echo >&2 "disabling it: make test GIT_SKIP_TESTS=t9200"
+echo >&2
+
 cvs >/dev/null 2>&1
 if test $? -ne 1
 then
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help