测试方法时出现属性错误:portal_url

测试方法时出现属性错误:portal_url

我需要在终端中使用命令“bin/test -t addServerUrl()”测试名为 addServerUrl() 的方法

addServerUrl 包含以下代码:


def addServerUrl(self,html_src,prefix):

    url = getToolByName(self.context, "portal_url")
    temp = html_src.replace('href="mailto:', '$XXX$')
    temp = temp.replace('href="', 'href="%s/%s' % (url, prefix))
    return  temp.replace('$XXX$', 'href="mailto:')

在终端运行“bin/test -t addServerUrl()”时出现以下错误

File "/home/oomsys/brundelre3/src/bdr.theme/src/bdr/theme/browser/createPictMenu.py", line 159, in addServerUrl
url = getToolByName(self.context, "portal_url")()
File "<string>", line 10, in check_getToolByName
File "/home/oomsys/brundelre3/eggs/Products.CMFCore-2.2.7-py2.7.egg/Products/CMFCore/utils.py", line 120, in getToolByName
raise AttributeError, name
AttributeError: portal_url

为什么我在“url”中收到错误???请有人尽快帮助我。

答案1

首先我创建了如下所示的测试代码

def test_addServerUrl(self):
    yyyy = xxxx(self.portal.REQUEST, self.portal)

然后我像下面这样编辑了我的代码

def test_addServerUrl(self):
        request = self.portal.REQUEST
        yyyy= xxxx(self.portal, request)

然后它正常工作了...我的属性错误解决了......

相关内容