patch 9.1.1092: tests: fix expected return code for python 3.13 on Windows

Commit: 
https://github.com/vim/vim/commit/2e4361bd40c302f84f3c699a90dcd0b6f637ec21
Author: Christian Brabandt <c...@256bit.org>
Date:   Sun Feb 9 17:18:07 2025 +0100

    patch 9.1.1092: tests: fix expected return code for python 3.13 on Windows
    
    Problem:  tests: fix expected return code for python 3.13 on Windows
    Solution: Check for return code 1 or 123 on Windows
    
    There is a regression with python 3.13 on Windows, that it no longer
    prints the requested error code, but instead exits with return code 1,
    which  breaks the test-suite.
    
    So let's check for either exit code 1 or 123 in tests
    Test_terminal_duplicate_eof_arg() and Test_terminal_eof_arg()
    
    This will probably be fixed on the Python side, see the pull request
    python/cpython#129901 but in the meantime, let's allow both error codes.
    
    related: #16599
    related: python/cpython#129900
    
    Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/src/testdir/test_terminal.vim b/src/testdir/test_terminal.vim
index b53f0cd53..89a8abc3b 100644
--- a/src/testdir/test_terminal.vim
+++ b/src/testdir/test_terminal.vim
@@ -944,7 +944,15 @@ func Test_terminal_eof_arg()
     call WaitFor({-> getline('$') =~ 'hello'})
     call assert_equal('hello', getline('$'))
   endif
-  call assert_equal(123, bufnr()->term_getjob()->job_info().exitval)
+  let exitval = bufnr()->term_getjob()->job_info().exitval
+  if !has('win32')
+    call assert_equal(123, exitval)
+  else
+    " python 3.13 on Windows returns exit code 1
+    " older versions returned correctly exit code 123
+    " https://github.com/python/cpython/issues/129900
+    call assert_match('1\|123', exitval)
+  endif
   %bwipe!
 endfunc
 
@@ -976,7 +984,15 @@ func Test_terminal_duplicate_eof_arg()
     call WaitFor({-> getline('$') =~ 'hello'})
     call assert_equal('hello', getline('$'))
   endif
-  call assert_equal(123, bufnr()->term_getjob()->job_info().exitval)
+  let exitval = bufnr()->term_getjob()->job_info().exitval
+  if !has('win32')
+    call assert_equal(123, exitval)
+  else
+    " python 3.13 on Windows returns exit code 1
+    " older versions returned correctly exit code 123
+    " https://github.com/python/cpython/issues/129900
+    call assert_match('1\|123', exitval)
+  endif
   %bwipe!
 endfunc
 
diff --git a/src/version.c b/src/version.c
index 040620222..fe43fd447 100644
--- a/src/version.c
+++ b/src/version.c
@@ -704,6 +704,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1092,
 /**/
     1091,
 /**/

-- 
-- 
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 visit 
https://groups.google.com/d/msgid/vim_dev/E1thAC9-00GclK-Bq%40256bit.org.

Raspunde prin e-mail lui