나는 다음과 같은 파일이 있습니다테스트는 자스민과 ES6 공장을 AngularJS와
class classAModel{
constructor(model) {
'ngInject';
if (!model) return {};
this.id = model.id;
this.name = model.name;
this.displayName = model.displayName;
}
}
export default classAModel;
이 코드는 다른 파일에 공장과 같이 정의된다 : module.js :
import classAModelfrom './classAModel'
module.factory('ClassAModel', ClassAModel);
다음 코드로 classAModel.js
이 코드는 테스트 컨텍스트가 아닐 때 완벽하게 작동합니다. Webpack을 사용하여로드되어 실행되는 번들을 만듭니다. 여태까지는 그런대로 잘됐다. 자, 문제는이 클래스를 어떻게 테스트 할 것인가입니다. 코드를 es6 스타일로 변경하기 전에 함수를 사용하여 효과적이었습니다. 테스트는 먼저 번들을로드하지만, 팩토리를 주입하려고 시도 할 때 (다시 이전과 동일) 오류가 발생합니다. 알 수없는 공급자 : modelProvider < - < - classAModel. 왜 그가 문제가 있다고 생각하는지 이해할 수는 있지만 그것을 고치는 방법을 이해할 수는 없습니다.
또한이 방법이 클래스에서 팩터 리 메서드를 만드는 대신 모델을 가져 와서 내 개체를 만드는 것이 올바른 방법인지 궁금합니다. 당신이 제공 한 정보를 바탕
감사
테스트 코드를 게시 하시겠습니까? 'model'을위한 모의 인스턴스를 생성하고 그것을 생성자에 전달하려고 시도 했습니까? – Lihini
classAModel을 주입 할 때 코드가 떨어집니다. 이전처럼 주입 부분에 들어 가지 않습니다. 나는 모의 서버 응답을 매개 변수로 가져 오는 팩토리를위한 예제와 그것을 초기화하는 방법이 정말 도움이 될 것이라고 생각한다. –