On Sat, Feb 22, 2020 at 09:21:56PM +0100, Bram Moolenaar wrote:
> 
> James McCoy wrote:
> 
> > On Sat, Feb 22, 2020 at 9:02 AM Bram Moolenaar <b...@moolenaar.net> wrote:
> > >
> > > Dominique wrote:
> > >
> > > > At https://buildd.debian.org/status/package.php?p=vim
> > > > I noticed this test failure on hppa architecture:
> > > >
> > > > Caught exception in Test_terminal_special_chars(): Vim(bwipeout):E89:
> > > > No write since last change for buffer 132 (add ! to override) @
> > > > function RunTheTest[40]..Test_terminal_special_chars, line 11
> > > >
> > > > Line 11 in Test_terminal_special_chars() is 'bwipe'.
> > > > It looks like we should call 'bwipe!' (with exclamation mark)
> > > > in Test_terminal_special_chars(). Although I don't
> > > > understand why the current buffer would have
> > > > change in this test.
> > >
> > > After "term ls" finishes it should be possible to wipe out the buffer.
> > > You might have found an actual problem, adding "!" would be ignoring
> > > that problem.
> > 
> > I can reproduce this on the hppa porterbox.  Running the test on its
> > own is fine.  It's only when running the entire file that the error
> > shows up.  I'll see if I can narrow down what's causing the problem.
> 
> I appreciate it.  I can't reproduce.  I thought of something like
> 'fileformat' making the buffer marked as changed, but since this is also
> a kind of Unix it's probably something else.

Trimming test_terminal.vim down to just Test_terminal_shell_option() and
Test_terminal_special_chars() reproduces the problem.  Switching the
order of those tests "fixes" the problem, although I see no reason why
there should be any interaction.

I added some debugging and it seems that, when the test fails, the
terminal job has not finished yet.

This change seems to make the test reliably pass.

diff --git i/src/testdir/test_terminal.vim w/src/testdir/test_terminal.vim
index 64bc7db1e..2e482b278 100644
--- i/src/testdir/test_terminal.vim
+++ w/src/testdir/test_terminal.vim
@@ -781,7 +781,7 @@ func Test_terminal_special_chars()
   call writefile(['x'], 'Xdir with spaces/quoted"file')
   term ls Xdir\ with\ spaces/quoted\"file
   call WaitForAssert({-> assert_match('quoted"file', term_getline('', 1))})
-  call term_wait('')
+  call WaitForAssert({-> assert_match('finish', term_getstatus(bufnr()))})
 
   call delete('Xdir with spaces', 'rf')
   bwipe

While I've got the environment setup, I'll take a look at some of the
other test failures on that system (and with a more recent Vim build).

Cheers,
-- 
James
GPG Key: 4096R/91BF BF4D 6956 BD5D F7B7  2D23 DFE6 91AE 331B A3DB

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20200222215625.kwjw3dmfzxsluu5a%40localhost.

Raspunde prin e-mail lui