是否可以调整Ember蓝图

时间:2015-08-26 13:40:21

标签: ember.js ember-cli

在为我们的应用程序编写验收测试时,我们使用ember generate来截断测试(ember generate acceptance-test <name>)。

下一步通常是修改生成的测试以在模块块中调用ember-simple-auth-testing's authenticateSession()(并且最有可能使用ember-data-factory-guy执行某些设置。)

我想做的是对验收测试蓝图的模板稍作调整,但我似乎无法找到有关如何扩展蓝图的任何文档。

有没有人知道是否存在任何此类文件,或者我将如何进行此操作?

谢谢!

2 个答案:

答案 0 :(得分:4)

您无法通过继承扩展蓝图,但您可以将该蓝图的代码复制到您自己的应用中并进行修改:

步骤:

  1. 创建一个名为blueprints的顶级文件夹(即与您的app文件夹相同的级别)。
  2. 打开您的node_modules文件夹,找到ember-cli,找到您尝试“扩展”的蓝图的文件夹。我使用引号因为我们只是要覆盖。如果您所寻找的蓝图不在那里,则可能已移至ember-cli-legacy-blueprints
  3. acceptance-test文件夹复制并粘贴到新创建的blueprints文件夹
  4. 如果您只是想修改生成的测试模板,请在acceptance-test/files/tests/acceptance/__name__-test.js文件夹中找到文件:blueprints并进行修改。
  5. 现在,调用ember generate acceptance-test将使用您的blueprints版本

答案 1 :(得分:3)

你不能扩展一个,但你可以覆盖一个。来自the Ember CLI docs on blueprints

  

项目目录中的蓝图优先于ember-cli打包的蓝图。这样,只需生成一个具有相同名称的蓝图,就可以轻松覆盖内置蓝图。

所以只需运行以下命令,然后根据需要修改模板:

ember generate blueprint acceptance-test

您可以找到Ember CLI验收测试蓝图here。这应该是写你的好参考。另外,请务必阅读我链接到的文档中的蓝图的整个部分 - 这将使您熟悉如何编写蓝图。

issue under ember-cli/blueprint关于支持&#39;延伸&#39;的可能性。用于蓝图。