test failues with terminfo on solaris

Mads Kiilerich mads at kiilerich.com
Sun Jun 26 18:20:55 CDT 2011


Danek Duvall wrote, On 06/26/2011 02:25 AM:
> On Sat, Jun 25, 2011 at 02:13:50AM +0200, Mads Kiilerich wrote:
>
>>> Now, if the testsuite shipped its own terminfo entry and used that
>>> directly, it could be sure to get the same results on all platforms.
>> Fine with me if you think that is the best solution and can make it work ;-)
> I believe it is; I'll send out a patch shortly.
>
>> Can you explain why test-ui-color.py started failing too?
> How do you reproduce that?  I don't see that output when running
> run-tests.py, even though I'm now reproducing the other problem, it
> doesn't look like it's supposed to run on its own, and I can't find any
> reference to that file in any other file in the tests directory.  Clearly
> there's something I don't understand about the way the tests are run.

It is supposed to run on its own, using a model similar to how .sh tests 
were run until a year ago. (It would be more obvious if x-bit and 
hash-bang was mandatory.)

Now I see that I see this:

$ TERM=foo ./run-tests.py -li test-ui-color.py
.
# Ran 1 tests, 0 skipped, 0 failed.
$ TERM=xterm ./run-tests.py -li test-ui-color.py

--- /home/mads/hg/tests/test-ui-color.py.out
+++ /home/mads/hg/tests/test-ui-color.py.err
@@ -1,5 +1,6 @@
  warning
  error
+no terminfo entry for setab/setaf: reverting to ECMA-48 color
  'buffered\n'
  colored? True
  colored? True

ERROR: /home/mads/hg/tests/test-ui-color.py output changed

This dependency to the environment is unfortunate. Setting TERM in 
run-tests.py or test-ui-color.py do however not make the test 
independent of the shell TERM value. It seems like solaris has its own 
idea of how environment variables should be inherited...

/Mads


More information about the Mercurial-devel mailing list