투스콥스오브 장고
라는 책에서는
시그널의 사용을 금기시하다시피 했지만, 차용하게 됐다.
해당 시그널이 작동되는 플로우는 다음과 같다.
from django.db.models import signals
signals.post_save.disconnect(send_product_kakao_alarm, sender=models.Consignment)
단위(Unit)테스트의 취지에 맞지도 않을 뿐더러,
매번 회사 슬랙 채널로 테스트 계정의 수거신청 내용이 발송되기 때문이다.
signals.post_save 에 대해 다시 disconnect 메소드로 접근한다.
첫 번째 인자엔 해당 시그널 함수명을,
두 번째 인자엔 모델명.
"Consignment 모델의 객체가 생성될 때(post_save),
send_product_kakao_alarm 함수가 작동된다.
유닛테스트는 아래와 같이,
위의 매커니즘을 "disconnect"
한다.
def test_login_user_can_access_to_on_mypage(self):
"""유저 마이페이지 access(각 상태별 제품 추가)"""
signals.post_save.disconnect(send_product_kakao_alarm, sender=models.Consignment)
--(이하 코드 생략)--
참고자료: https://stackoverflow.com/questions/33402842/how-can-i-disconnect-a-django-signal