如何测试TextPainter?

时间:2017-01-02 23:38:01

标签: flutter

我已经编写了一个类来处理自定义文本换行,但我不确定如何测试它。我尝试使用Flutter的testWidgets方法创建外部类的实例,传递一些文本,然后评估结果。有一个公共类PrecisionTextOverflow,其构建方法就是这样。 _PrecisionTextPainter处理解析和绘制文本的操作。:

Widget build(BuildContext context) {
    return new Column(
      mainAxisAlignment: MainAxisAlignment.center,
      crossAxisAlignment: CrossAxisAlignment.start,
      children: <Widget>[
        new CustomPaint(
          painter: new _PrecisionTextPainter(
              mainText,
              mainTextStyle,
              mainAlignment,
              secondaryText,
              secondaryTextStyle,
              secondaryAlignment,
              lineWidth,
              linesToWrap),
        )
      ],
    );
  }

由于_PrecisionTextPainter使用TextPainters而不是Text窗口小部件来绘制实际文本,因此Finder "find text" method似乎不适合我。

我需要一种方法来测试我的_PrecisionTextPainter绘制的是什么。如何访问其字段或生成的绘制文本?

1 个答案:

答案 0 :(得分:0)

遗憾的是,我们目前还没有很好的方法来测试绘画。

在我们想要做的事情清单中占据优势。您可以在此处跟踪进度: https://github.com/flutter/flutter/issues/3227