Test_help_complete が失敗する #970

Closed
koron opened this Issue Oct 16, 2016 · 4 comments

Projects

None yet

2 participants

@koron
Member
koron commented Oct 16, 2016

質問・報告の内容

src/testdir で nmake -f Make_dos.mak win32 すると以下のようにテストが失敗する。

From test_alot.vim:
Found errors in Test_help_complete():
function RunTheTest[9]..Test_help_complete line 22: Expected ['h test-char@ab', 'h test-char@en', 'h test-col@ab', 'h test-col@en'] but got ['h test-char@en', 'h test-char@en\t', 'h test-col@ab', 'h test-col@en']

Vimのバージョン

8.0.0039
(without any other patches)

OSの種類/ディストリ/バージョン

Windows 10 Pro 64bit + MSVC10

その他

具体的には s:get_cmd_compl_list(":h test") の結果がおかしい、のだが、
直前の行に sleep を挟んで以下のようにするとテストはパスする。

set rtp+=Xdir1/doc-ab
set helplang=
sleep 100m
let list = s:get_cmd_compl_list(":h test")
call assert_equal(sort(['h test-col@en', 'h test-col@ab',
      \             'h test-char@en', 'h test-char@ab']), sort(list))

とてもいやらしい。

@koron
Member
koron commented Oct 16, 2016

vim-win32-installer では起こってないし、私のローカル環境特有の問題であり、
かつ回避方法があるので調査・修正の優先順位は低い。

ただし 8.0.0003 の時は無かった症状なので、
その後 0039 までの間の変更によるものだと考えられる。
気が向いたら bisect するのが良さそう。

なにか気がついたことがあったらコメントいただけるとうれしいです。

@koron
Member
koron commented Nov 13, 2016

8.0.0082 で再現しなくなった。 +kaoriya での確認だけど、
特になにかをしたわけではないので解決されたとみなして良いでしょう。

@koron koron closed this Nov 13, 2016
@h-east
Member
h-east commented Nov 16, 2016

再オープンします。
この件、Bram氏も把握しておりデバッグに難航しているようです。
https://groups.google.com/d/msg/vim_dev/Zz3pHJUm7xY/Ckz3z0PHBgAJ

Only happens in console version.

私としてはs:get_cmd_compl_list()で補完リストを取得する方法が無理やり感があるので、そこをsimpleな実装に書き換えて問題が出なくなればひとまずはそれで良いかなと考えています。
(s:get_cmd_compl_list()書いたの私です。汗)
simple実装案2つほど持ってますので再実装して提案してみます。

いや、まずその前にsleep 100m入れると安定するという情報を提供するのが有効かも。

@h-east h-east reopened this Nov 16, 2016
@h-east
Member
h-east commented Nov 18, 2016

patch 8.0.0091
vim/vim@9f0e423

コマンドラインの文字列を無理やり変数に入れるhackをやめてgetcompletion()を使うように変更されました。
vim/vim@9f0e423#diff-a700bb3161e3a175a23c2688e28c315fL84

これで解消されると思います。

送信したpatch
https://groups.google.com/d/msg/vim_dev/Zz3pHJUm7xY/830AnPv7BgAJ

@h-east h-east closed this Nov 18, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment