Ember.js: ember 2.12 memerlukan perubahan penghentian layanan dalam pengujian

Dibuat pada 16 Mar 2017  ·  3Komentar  ·  Sumber: emberjs/ember.js

Saya mendapatkan kesalahan ini dengan pembaruan terbaru https://travis-ci.org/kellyselden/package-hint-historic-resolver/jobs/211522381#L648

Attempting to inject an unknown injection: 'service:config'

Mungkin tidak suka layanan saya diberi nama config ? Saya membersihkan cache travis dan menjalankan ulang master untuk memverifikasi bahwa hanya ember 2.12 yang menyebabkan ini.

Komentar yang paling membantu

Atau, untuk pengujian unit, Anda dapat menentukan needs: ['service:config'] . Ini akan memastikan bahwa layanan ada dalam wadah/registri ketika pernyataan memeriksanya dan masih memungkinkan penghentian selama pembuatan seperti yang Anda tunjukkan di atas.

Semua 3 komentar

Saya tidak yakin ini adalah bug, layanan yang tidak dikenal seharusnya selalu menimbulkan kesalahan. Sayangnya, ini tidak berfungsi dengan benar sebelumnya, tetapi diperbaiki selama bekerja di pabrik untuk fitur.

Lihat https://github.com/emberjs/ember.js/pull/14850 untuk beberapa latar belakang.

Masalahnya adalah penghentian layanan dalam pengujian unit seperti ini:

// with a service named `config`
let service = this.subject({
  config: {
    cacheTime: 34
  }
});

tidak lagi berfungsi. Anda harus mendaftarkan layanan stub sebelum panggilan subject() sekarang untuk meneruskan pernyataan Ember.inject.service() yang baru.

Atau, untuk pengujian unit, Anda dapat menentukan needs: ['service:config'] . Ini akan memastikan bahwa layanan ada dalam wadah/registri ketika pernyataan memeriksanya dan masih memungkinkan penghentian selama pembuatan seperti yang Anda tunjukkan di atas.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat