[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [PATCH] Fixing prop_tests.py failure in Solaris

From: Alexander Thomas <alexander_at_collab.net>
Date: Wed, 09 Jun 2010 16:42:22 +0530

On Wed, 2010-06-09 at 12:36 +0200, Stefan Sperling wrote:
> On Wed, Jun 09, 2010 at 02:03:01PM +0530, Alexander Thomas wrote:

> > > The test used to check for an unprintable ascii character (backspace).
> > > With this patch, it checks for an empty string.
> > > I'm not sure if this is a good thing to do.
> > >
> > I meant to use chr(32) and not an empty string. Subversion will treat
> > propnames starting with space as invalid.
> > Should I post another patch?
> char(32) is ascii '2'.

Decimal 32 not hex.

> I don't know the naming rules of svn off-hand. Is the test trying
> to use a non-printable character on purpose? If so, we should keep
> using a non-printable character.
prop_test.py:invalid_propnames() tests prop commands on invalid
propname, don't have anything to do with non-printable characters.

> > > In what way does chr(8) make this test fail on Solaris?
> > prop commands errors with "svn: Non-ASCII character (code 8) detected,
> > and unable to convert to/from UTF-8" in solaris. I tried different
> > non-printable characters which resulted in same error.
> That sounds like a problem with your build, or with your locale
> settings.
> Since ASCII is a subset of UTF-8, these errors usually show when people
> try using characters that are not in ascii, and do not have and iconv
> implementation linked into apr-util. I don't think this applies in your
> case, but we should still check.
> Do you have apr-util linked to an iconv implementation (GNU libiconv
> or APR iconv)? If apr-util has no iconv, Subversion won't be able
> to convert anything from/to UTF-8.
Completely agree with you. I can't explain why my system misbehaves. All
my binaries are linked to 1.12 version of GNU libiconv, also LC_ALL set
to en_US.UTF-8.

> Do the utf tests in subversion/tests/libsvn_subr/utf_tests.c pass for you?
> If they don't pass, then you're trying to fix the wrong problem.
> If they do pass, we'll need to dig deeper and determine why the prop
> test is failing for you.
prop_test.py:invalid_propnames is the only one that is failing.

> It would be great if you could build with --enable-maintainer-mode and
> show the error trace of the failing test. An easy way is to just post
> the entire output of ./prop_tests.py --verbose invalid_propnames

here is last part of the entire output.

CMD: svn propdel "
--config-dir /tmp/tmp.PNaiJc/svn-test-work/local_tmp/config --password
rayjandom --no-auth-cache --username jrandom
CMD: /opt/CollabNet_Subversion/bin/svn propdel
--config-dir /tmp/tmp.PNaiJc/svn-test-work/local_tmp/config --password
rayjandom --no-auth-cache --username jrandom exited with 1
<TIME = 0.253850>
svn: Non-ASCII character (code 8) detected, and unable to convert
to/from UTF-8
.*Attempting to delete nonexistent property '.*
svn: Non-ASCII character (code 8) detected, and unable to convert
to/from UTF-8
EXCEPTION: SVNUnmatchedError
Traceback (most recent call last):
  File "/tmp/tmp.PNaiJc/tests/cmdline/svntest/main.py", line 1333, in
    rc = self.pred.run(**kw)
  File "/tmp/tmp.PNaiJc/tests/cmdline/svntest/testcase.py", line 121, in
    return self.func(sandbox)
  File "tests/cmdline/prop_tests.py", line 1463, in invalid_propnames
    'propdel', propname)
  File "/tmp/tmp.PNaiJc/tests/cmdline/svntest/actions.py", line 208, in
    expected_exit, *varargs)
  File "/tmp/tmp.PNaiJc/tests/cmdline/svntest/actions.py", line 242, in
    verify.verify_outputs(message, out, err, expected_stdout,
  File "/tmp/tmp.PNaiJc/tests/cmdline/svntest/verify.py", line 350, in
    compare_and_display_lines(message, label, expected, actual,
  File "/tmp/tmp.PNaiJc/tests/cmdline/svntest/verify.py", line 322, in
    raise raisable
FAIL: prop_tests.py 22: test prop* handle invalid property names
Received on 2010-06-09 13:13:06 CEST

This is an archived mail posted to the Subversion Dev mailing list.