2015-06-21 3 views
2

При запуске scalacheck из sbt console выхода ограничен 76 полукокса шириной колонки:Как увеличить ширину столбца char для вывода консоли scalacheck?

$ sbt test:console 

import scalaz._ 
import Scalaz._ 
import scalacheck.ScalazProperties._ 
import scalacheck.ScalazArbitrary._ 
import scalacheck.ScalaCheckBinding._ 

scala> monad.laws[List].check 
+ monad.applicative.apply.functor.invariantFunctor.identity: OK, passed 100 
    tests. 
+ monad.applicative.apply.functor.invariantFunctor.composite: OK, passed 10 
    0 tests. 
+ monad.applicative.apply.functor.identity: OK, passed 100 tests. 
+ monad.applicative.apply.functor.composite: OK, passed 100 tests. 
+ monad.applicative.apply.composition: OK, passed 100 tests. 
+ monad.applicative.identity: OK, passed 100 tests. 
+ monad.applicative.homomorphism: OK, passed 100 tests. 
+ monad.applicative.interchange: OK, passed 100 tests. 
+ monad.applicative.map consistent with ap: OK, passed 100 tests. 
+ monad.bind.apply.functor.invariantFunctor.identity: OK, passed 100 tests. 
+ monad.bind.apply.functor.invariantFunctor.composite: OK, passed 100 tests 
    . 
+ monad.bind.apply.functor.identity: OK, passed 100 tests. 
+ monad.bind.apply.functor.composite: OK, passed 100 tests. 
+ monad.bind.apply.composition: OK, passed 100 tests. 
+ monad.bind.associativity: OK, passed 100 tests. 
+ monad.bind.ap consistent with bind: OK, passed 100 tests. 
+ monad.right identity: OK, passed 100 tests. 
+ monad.left identity: OK, passed 100 tests. 

Есть ли способ, чтобы увеличить этот лимит?

ответ

1

Это, к сожалению, невозможно изменить, так как оно жестко закодировано в ScalaCheck (в https://github.com/rickynils/scalacheck/blob/master/src/main/scala/org/scalacheck/util/ConsoleReporter.scala). Я предлагаю открыть проблему на странице Gigaub ScalaCheck.

+0

Вы нашли, где в коде scalacheck это было жестко запрограммировано? –

0

Это невозможно, поскольку значение ширины жестко закодировано в ConsoleReporter. Тем не менее, если вы работаете тесты с main, определенной в Properties, вы можете сделать следующее:

object MyCheck extends Properties("My property check") { 

    override def overrideParameters(p: Test.Parameters) = 
     p.withTestCallback(WideConsoleReporter) 

    ... 

} 

, а затем в своем коде, создавать WideConsoleReporter на основе ConsoleReporter.

Смежные вопросы