2016-07-28 3 views
0

저는 파이썬과 django에서 꽤 새로운 것 같습니다.커스텀 모델 매니저 메소드의 Django 유닛 테스트

나는 내가이 사용자 정의 관리자를 테스트 할 method.but의 관점에서 ValidationError 또는 anyother 오류를 잡는 방법을 알고하지 않는 일부 exceptions.now에 ValidationError을 제기하고 방법과 사용자 정의 모델 관리자와 모델을 가지고 django 모델의 세관 관리자 메소드를 테스트합니다. 나는 다음과 같은 단위 테스트를 시도했지만 작동하지 않는 그

class CustomModelManager(model.Manager): 

    def custom_method(self): 
     #for some exception 
     raise ValidationError('a sample validation error') 

class SampleModel(models.Model): 
    ###fields 
    objects = CustomModelManager() 

내 시나리오는 아래에 묘사되어있다

,

def test_samle_model(self): 
    issues = Issues.objects.custom_method(field1='wrong field')###this will raise that validationError 
    self.assertEqualValidationError, 'a sample validation error') 

그것은 테스트 '오류'를 잡을 수 있습니까? 또는 나는 무엇인가 놓치고 있냐?

+0

왜 당신이 관리자에서 ValidationErrom을 올릴 것인가? 그것은 유효성 검사기에 속합니다. –

답변

1

사용 :

def test_sample_model(self): 
    with self.assertRaises(ValidationError):  
     issues = Issues.objects.custom_method(field1='wrong field') 
관련 문제