이 코드를 이해하는 데 어려움이 있습니다. 테스트에서 시간을 절약하기 위해 API 엔드 포인트 대신 모의 (mock)를 사용하는 것으로 알고 있습니다.classmethod 람다 파이썬
내가 이해하지 못하는 것은 classmethod (lambda cls : self.preapproval) 구조입니다. 모든 cl에서 사용하지 않는 코드 안에 lambda cls 사용의 요점은 무엇입니까?
나는 사람이 ..이 하나
덕분에 많은 도움이 되거 수 있다면 나는 매우 행복 할 것, 내가 충분히 명확 해요 바랍니다.
@patch("paypaladaptive.api.endpoints.UrlRequest",
MockUrlRequestPreapproval)
def test_preapproval(self):
# I don't understand this code, it is very confusing. Why do I need to use a lambda structure if in the code itself I don't use cls (self.preapproval)
MockUrlRequestPreapproval.preapproval = (
classmethod(lambda cls: self.preapproval))
self.assertTrue(self.preapproval.process())
self.preapproval = Preapproval.objects.get(pk=self.preapproval.pk)
self.assertNotEqual(self.preapproval.preapproval_key, "")
self.assertEqual(self.preapproval.status, "created")
@ GP89 아, 맞습니다. 클래스를 전달해야하기 때문에> = 1이 걸릴 수 있습니다. 감사! – parchment
그게 훨씬 명확합니다. 그러나 왜 우리는 첫 번째 방법으로 수업 방법이 필요한가? 람다 만 넣을 수는 없습니까? 또는 더 나은 이유는 무엇입니까? MockUrlRequestPreapproval.preapproval = self.preapproval – cyberjoac
나머지 코드는 classmethod를 기대하기 때문에 생각합니다. 다른 것을하면 수업의 행동이 바뀔 수 있습니다. @cyberjoac – parchment