Ember.js: ember 2.12 nécessite un changement de service dans les tests

Créé le 16 mars 2017  ·  3Commentaires  ·  Source: emberjs/ember.js

Je reçois cette erreur avec la récente mise à jour https://travis-ci.org/kellyselden/package-hint-historic-resolver/jobs/211522381#L648

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

Peut-être qu'il n'aime pas que mon service s'appelle config ? J'ai vidé le cache de travis et relancé le maître pour vérifier que ce n'est que Ember 2.12 qui en est la cause.

Commentaire le plus utile

Alternativement, pour les tests unitaires, vous pouvez spécifier needs: ['service:config'] . Cela garantira que le service est présent dans le conteneur/registre lorsque l'assertion le vérifie et permet toujours le stub pendant la création comme vous l'avez montré ci-dessus.

Tous les 3 commentaires

Je ne suis pas sûr que ce soit un bogue, les services inconnus étaient toujours censés générer une erreur. Malheureusement, cela ne fonctionnait pas juste avant, mais a été corrigé pendant le travail en usine pour la fonctionnalité.

Voir https://github.com/emberjs/ember.js/pull/14850 pour un aperçu.

Le problème était le service stub dans les tests unitaires comme celui-ci :

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

ne fonctionne plus. Vous devez maintenant enregistrer le service stub avant l'appel subject() pour passer la nouvelle assertion Ember.inject.service() .

Alternativement, pour les tests unitaires, vous pouvez spécifier needs: ['service:config'] . Cela garantira que le service est présent dans le conteneur/registre lorsque l'assertion le vérifie et permet toujours le stub pendant la création comme vous l'avez montré ci-dessus.

Cette page vous a été utile?
0 / 5 - 0 notes