Qunit で競合状態が発生しているようです。具体的には、ブランチをインストールした状態で以下を実行しています。
rake \"plugin:qunit[discourse-multilingual]\"
イニシャライザーで関数を宣言しています(I18n を拡張しています)。
テストがプラグインの Ember イニシャライザーを実行する前に実行されることがあり(25%?)、関数が定義されていないために失敗します。
テストが実行される前にプラグインのイニシャライザー JS が実行されることを 保証 するにはどうすればよいですか?
テスト:
定義:
断続的なエラー:
TypeError: _I18n.default.translate_tag is not a function
OK、リファクタリングで解決しました。関数をI18nから既存の多言語モジュールに移動しました。
I18nをここで拡張することには、あらゆるシナリオ、特に単体テストにおいて信頼性が低いという問題があるようです。
「いいね!」 1