Mercurial > vim
comparison src/testdir/test_terminal3.vim @ 27098:8bb07c88ac27 v8.2.4078
patch 8.2.4078: terminal test for current directory not used on FreeBSD
Commit: https://github.com/vim/vim/commit/ced2b38a560cc4f4ec983ed2cf4372ab62e1dbc1
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Jan 13 15:25:32 2022 +0000
patch 8.2.4078: terminal test for current directory not used on FreeBSD
Problem: Terminal test for current directory not used on FreeBSD.
Solution: Make it work on FreeBSD. (Ozaki Kiichi, closes https://github.com/vim/vim/issues/9516) Add
TermWait() inside Run_shell_in_terminal() as a generic solution.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 13 Jan 2022 16:30:04 +0100 |
parents | 1eb62546e20c |
children | 2961745336b8 |
comparison
equal
deleted
inserted
replaced
27097:6612e555c1c0 | 27098:8bb07c88ac27 |
---|---|
777 | 777 |
778 " Test for sync buffer cwd with shell's pwd | 778 " Test for sync buffer cwd with shell's pwd |
779 func Test_terminal_sync_shell_dir() | 779 func Test_terminal_sync_shell_dir() |
780 CheckUnix | 780 CheckUnix |
781 " The test always use sh (see src/testdir/unix.vim). | 781 " The test always use sh (see src/testdir/unix.vim). |
782 " However, BSD's sh doesn't seem to play well with OSC 7 escape sequence. | |
783 CheckNotBSD | |
784 | 782 |
785 set asd | 783 set asd |
786 " , is | 784 " , is |
787 " 1. a valid character for directory names | 785 " 1. a valid character for directory names |
788 " 2. a reserved character in url-encoding | 786 " 2. a reserved character in url-encoding |
789 let chars = ",a" | 787 let chars = ",a" |
790 " "," is url-encoded as '%2C' | 788 " "," is url-encoded as '%2C' |
791 let chars_url = "%2Ca" | 789 let chars_url = "%2Ca" |
792 let tmpfolder = fnamemodify(tempname(),':h').'/'.chars | 790 let tmpfolder = fnamemodify(tempname(),':h') .. '/' .. chars |
793 let tmpfolder_url = fnamemodify(tempname(),':h').'/'.chars_url | 791 let tmpfolder_url = fnamemodify(tempname(),':h') .. '/' .. chars_url |
794 call mkdir(tmpfolder, "p") | 792 call mkdir(tmpfolder, "p") |
795 let buf = Run_shell_in_terminal({}) | 793 let buf = Run_shell_in_terminal({}) |
796 call term_sendkeys(buf, "echo -ne $'\\e\]7;file://".tmpfolder_url."\\a'\<CR>") | 794 call term_sendkeys(buf, "echo $'\\e\]7;file://" .. tmpfolder_url .. "\\a'\<CR>") |
797 "call term_sendkeys(buf, "cd ".tmpfolder."\<CR>") | 795 "call term_sendkeys(buf, "cd " .. tmpfolder .. "\<CR>") |
798 call TermWait(buf) | 796 call TermWait(buf) |
799 if has("mac") | 797 if has("mac") |
800 let expected = "/private".tmpfolder | 798 let expected = "/private" .. tmpfolder |
801 else | 799 else |
802 let expected = tmpfolder | 800 let expected = tmpfolder |
803 endif | 801 endif |
804 call assert_equal(expected, getcwd(winnr())) | 802 call assert_equal(expected, getcwd(winnr())) |
805 | 803 |