簡體   English   中英

emacs進行Javascript測試編譯

[英]emacs compile for Javascript tests

我正在使用emacs開發javascript(Node.js)。 摩卡咖啡進行測試。 我用make運行mocha,這是我的Makefile:

REPORTER=spec
MOCHA_OPTS=--ui bdd --timeout 2000 --colors

test:
    @NODE_ENV=test \
    ./node_modules/mocha/bin/mocha \
    --reporter $(REPORTER) \
    $(MOCHA_OPTS) \
    test/*.js

使用emacs編譯,它可以很好地運行測試,但是輸出如下:

  #Category API
[0G    ✓ should create a category (378ms)
[0G    ✓ should get category list (282ms)
[0G    ✓ should get category (213ms)
[0G    ✓ should verify category permissions (211ms)
[0G    ✓ should edit category (454ms)
[0G    ✓ should verify category (218ms)
[0G    ✓ should remove category (242ms)

有什么方法可以從輸出中刪除那些難看的[0G?

Mocha嘗試檢測它是否與tty一起運行,如果是,它將允許報告程序輸出ANSI序列。 --colors更改為--no-colors只會有所幫助。 事實是,有些報告程序嘗試移動tty光標,即使關閉了顏色,仍然會輸出ANSI序列。 沒有標志可以迫使Mocha將其輸出視為非tty。 但是,您可以通過以下方法實現相同的結果:

$ mocha | cat

如果您想要一個在Emacs內部調用時不會輸出ANSI序列但在外部可以“正常”運行的Makefile,可以這樣做:

REPORTER=spec
MOCHA_OPTS=--ui bdd --timeout 2000 $(if $(INSIDE_EMACS),--no-colors,--colors)

.PHONY: test
test:
    @NODE_ENV=test \
    ./node_modules/mocha/bin/mocha \
    --reporter $(REPORTER) \
    $(MOCHA_OPTS) \
    test/*.js $(and $(INSIDE_EMACS),| cat)

INSIDE_EMACS由Emacs定義。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM