BETA

Visual Studioのマルチバイトを含むテストが正常に動かない

投稿日:2019-04-14
最終更新:2019-04-14

Visual Studioで、テスト・エクスプローラでのテスト結果やテスト名がマルチバイトを含む場合に、
成功するはずのテストケースが失敗表示になる問題が発生して、数日間悩んでいました。
私はTapeを使っています。

test("Test [3042]", function (t) {  

   t.equal("あ", "あ"); // "あ".charCodeAt(0) === 0x3042  
   t.end();  
});  

どうやら、テスト結果ではUTF-16で(c >= 0x80 && (c&0x20) == 0 && (c&0x1f) > 0)となる文字を含むと問題が発生するようです。
テスト名では非ASCII文字全般がだめみたいです。SJISのダメ文字を含むとそのテストケースが終了しなくなる問題もありました。

以下の手順で地域設定からUTF-8モードを有効にすると解消しました
https://kuluna.github.io/blog/post/20180512/

しかし、

import test = require("tape");  
test('"', function (t) {  
    t.ok(true)  
    t.end()  
})  

は失敗するままなので、また問題報告から送ってみようかと思っています。

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

Lenqthの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!