From b377793b6e445ab007e14b51e38260e8613ce843 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Fri, 26 Nov 2021 22:31:38 +0900 Subject: [PATCH] Fold dotted outputs from test-spec --- spec/default.mspec | 48 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/spec/default.mspec b/spec/default.mspec index b928a2c9aa..f97bcc690e 100644 --- a/spec/default.mspec +++ b/spec/default.mspec @@ -70,3 +70,51 @@ end class MSpecScript prepend JobServer end + + +require 'mspec/runner/formatters/dotted' + +class DottedFormatter + prepend Module.new { + BASE = __dir__ + "/ruby/" + + def initialize(out = nil) + super + if out + @columns = nil + else + columns = ENV["COLUMNS"] + @columns = columns ? columns.to_i : 80 + end + @dotted = 0 + @loaded = false + end + + def register + super + MSpec.register :load, self + MSpec.register :unload, self + end + + def after(*) + super + if !@loaded and @columns and (@dotted += 1) >= @columns + print "\n" + @dotted = 0 + end + end + + def load(*) + print "#{MSpec.file.delete_prefix(BASE)}: " + @loaded = true + end + + def unload + super + if @loaded + print "\n" + @dotted = 0 + end + end + } +end