karma-runner/karma

logger.js ignores layout.pattern

Open

#2,414 创建于 2016年10月19日

在 GitHub 查看
 (1 评论) (0 反应) (0 负责人)JavaScript (11,918 star) (1,703 fork)batch import
help wantedneeds: investigation

描述

Expected behaviour

In karma/lib/logger.js, setup should use the layout.pattern string if it exists.

Actual behaviour

When layout.type === 'pattern', setup only uses one of the built-in constants:

    var pattern = colors ? constant.COLOR_PATTERN : constant.NO_COLOR_PATTERN

Environment Details

  • Karma version (output of karma --version): 1.3.0
  • Relevant part of your karma.config.js file
    loggers: [
        {
            type: 'console',
            layout: {
                type: 'pattern',
                pattern: '%[%d{ISO8601}:%p [%c]: %]%m'
            }
        }
    ]

Steps to reproduce the behaviour

  1. Supply a custom logger in karma.config.js as specified above.

Comment

If this is indeed broken, I can submit a PR.

Further, I realize that fixing this to use the provided pattern will then ignore the colors boolean. This might be addressed by having layout.colorPattern and layout.noColorPattern which get assigned appropriately to layout.pattern. I can submit a PR for this as well.

Thanks.

贡献者指南