Уведомления

Группа в Telegram: @pythonsu

#1 Март 19, 2011 00:48:26

LP fan
От:
Зарегистрирован: 2009-10-07
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

не могу найти ошибку в UnitTest

Часть теста

class TemplateTagTest(TestCase):
def testEditLinkTag(self):
client = Client()
client.login(username="admin", password="12345")
edit_obj = MyInfo.objects.get()
admin_edit_link = create_link(edit_obj)
t = Template("{% load tags %} {%admin_edit edit_obj%}")
result = t.render(Context({'edit_obj':edit_obj}))
self.assertEqual(admin_edit_link, result)
Собственно сам tag
from django import template
from django.core.urlresolvers import reverse

register = template.Library()

def create_link(obj):
link = reverse('admin:%s_%s_change' % (obj._meta.app_label, obj._meta.module_name), args=[obj.id])
#link = u'<a href="/admin/%s/%s/%i" title="edit">edit %s</a>'%(obj._meta.app_label, obj._meta.module_name, obj.id, obj.__unicode__())
return unicode(link)

class AdminEditNode(template.Node):
def __init__(self, object):
self.object = template.Variable(object)

def render(self, context):
return create_link(self.object.resolve(context))

def admin_edit(parser, token):
tagname, object = token.split_contents()
return AdminEditNode(object)

register.tag('admin_edit', admin_edit)
А вот и корень зла во всем мире
======================================================================
FAIL: testEditLinkTag (_42cupstest.tickets.tests.TemplateTagTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/lpfan/eclipse/_42cupstest/../_42cupstest/tickets/tests.py", line 76, in testEditLinkTag
self.assertEqual(admin_edit_link, result)
AssertionError: u'/admin/tickets/myinfo/1/' != u' /admin/tickets/myinfo/1/'
Реально не понимаю откуда лишний пробел



Отредактировано (Март 19, 2011 00:50:10)

Офлайн

#2 Март 19, 2011 02:05:16

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

не могу найти ошибку в UnitTest

LP fan
Реально не понимаю откуда лишний пробел
От шаблоны. Остался от тега {% load %}. Т.е. всё нормально. Вы не должны ожидать голую строку, сделайте ей strip



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version