0
我有這段代碼,這是一個類__init__
方法,並採用兩個參數。單元測試複雜`__init__`方法
def __init__(self, port_type, request):
self.log = Log(__name__, True)
self.request = request
self.sitecode = port_type.sitecode.upper()
self.browser_default_lang = self.request.META['HTTP_ACCEPT_LANGUAGE'].split(',')[0]
self.active_lang = self.request.session.get('lang', self.browser_default_lang.lower())
self.static_folder = 'static_%s_%s' % (self.sitecode, self.SITE_TEMPLATES_RESOURCES_SUFFIX)
self.template_path = os.path.join(settings.MEDIA_ROOT, self.static_folder)
self.template_path_port_type = '%s_%s' % (self.template_path, self.port_type.hash)
self.site_media_path = os.path.join(settings.MEDIA_URL, self.static_folder)
self.site_port_type_media_path = '%s_%s' % (self.site_media_path, self.port_type.hash)
self.site_config = SiteConfig.objects.get(sitecode=self.sitecode)
self.site = UmSite.objects.get(code=self.port_type.sitecode)
self.context = {}
我發現很難爲此編寫單元測試。我應該先寫測試,但不知何故,我最終得到了這個,不得不重構,現在正在寫它們。
謝謝。我正在使用'來自模擬導入模擬'來模擬請求。 – feroz