var model, controller;
// Set up the controller in a new container.
// On tear down, set the variables to null,
// we reset the app on setup.
module('User Edit Controller', {
setup: function(){
AisisPlanner.reset();
controller = AisisPlanner.__container__.lookup('controller:user_edit');
model = AisisPlanner.User.store.createRecord('user', {
name: 'john doe',
userName: 'john_doe',
email: '[email protected]',
bio: '',
pictureUrl: '',
role: 'Administrator'
});
controller.set('model', model)
},
teardown: function(){
controller = null;
model = null
}
});
test('capatalize_user_name', function(){
model.set('userName', 'John doe')
equal(controller.get('userName'), 'JOHN DOE', 'all caps');
});
다음 테스트는 현재 컨테이너와 모델에서 컨트롤러를 설정하는 과정을 간단하게 설명합니다. 그런 다음 해당 모델에 정보를 설정하고 테스트에서이 이름을 사용하여 이름을 알 수 있습니다. Ember JS, 컨트롤러
문제
내가 오류를 얻고 있다는 것입니다 :Setup failed on capatalize_user_name: 'undefined' is not an object (evaluating 'AisisPlanner.User.store.createRecord')
및
Died on test #2 global [email protected]://localhost:3000/assets/controllers/user_edit_controller_test.js?body=1:26:5: 'undefined' is not an object (evaluating 'model.set')
나는에서 아이디어를 얻었다 : 내가 생각 this blog post on how to test controllers. 그것의 대부분은 구식하지만 난 그 어느 것도 덜을 시도하지 않습니다. 어떤 아이디어가 이것을 고치는 방법?
왼손잡이 만 입력하는 동안 하하, 분명히 말더듬 거리는 소리가 오타가 아닙니다. – Kingpin2k
이제 다음과 같은 두 가지 새로운 오류가 발생합니다. capatalize_user_name에서 설치가 실패했습니다. 어설 션 실패 : 실행 모드의 자동 실행을 비활성화 한 테스트 모드가 켜져 있습니다. Ember.run에 비동기 부작용이있는 코드를 래핑해야합니다. 출처 : \t http : // localhost : 3000/assets/ember.js? body = 1 : 61 테스트 # 2 전역 코드 @ http : // localhost : 3000/assets/controllers/user_edit_controller_test.js? body = 1 : 26 : 5 : 'undefined'가 객체가 아닙니다 ('model.set'평가) – TheWebs
답변에 ember를 실행 한 예를 넣었습니다. 테스트에서 모델이 정의되지 않았습니까? – Kingpin2k