具有测试依赖关系的Pub变换器

时间:2016-02-01 10:01:43

标签: dart dart-polymer dart-pub

我有一个dart包(Harvest),它包含对聚合物的dev(测试)依赖性,我只用于集成测试目的

  dev_dependencies:
    polymer: "^0.16.4+1"
    test: any
  transformers:
  - polymer:
      entry_points:
         - test/harvest_idb_test.html

然而,为了进行聚合物测试,我需要注册聚合物变压器。运行此转换器失败,除非我将聚合物依赖项移动到我真正想要避免的项目主要依赖项中,因为它仅用于测试目的。

有没有办法注册依赖于dev依赖的转换器,或者我可以以某种方式创建 dev_transformer 部分。

2 个答案:

答案 0 :(得分:3)

如果您使用$include仅包含测试目录中的文件,则可以将其保留为dev_dependency。当您的包用作其他包的依赖项时,变换器不会尝试加载。例如:

dev_dependencies:
  polymer: "^0.16.4+1"
  test: any
transformers:
- polymer:
    entry_points:
      - test/harvest_idb_test.html
    $include: test/**_test{.*,}.{dart,html}

答案 1 :(得分:2)

这样的请求在这里被拒绝了 - https://github.com/dart-lang/pub/issues/1260
- https://github.com/dart-lang/pub/issues/925

使用$include/$exclude作为解决方法被提及,但这并不能解决您的问题。

还有https://github.com/dart-lang/pub/issues/1324合并到https://github.com/dart-lang/pub/issues/1183,标记为已修复。这看起来应该有效。

我会在pub存储库中创建一个新问题。