def test_summarize_validation(): v = Mock() v.errors = 1 v.warnings = 1 assert u"1 error, 1 warning" == render("{{ summarize_validation(validation) }}", {"validation": v}) v.errors = 2 assert u"2 errors, 1 warning" == render("{{ summarize_validation(validation) }}", {"validation": v}) v.warnings = 2 assert u"2 errors, 2 warnings" == render("{{ summarize_validation(validation) }}", {"validation": v})
def test_summarize_validation(): v = Mock() v.errors = 1 v.warnings = 1 assert u'1 error, 1 warning' == render( '{{ summarize_validation(validation) }}', {'validation': v}) v.errors = 2 assert u'2 errors, 1 warning' == render( '{{ summarize_validation(validation) }}', {'validation': v}) v.warnings = 2 assert u'2 errors, 2 warnings' == render( '{{ summarize_validation(validation) }}', {'validation': v})
def test_summarize_validation(): v = Mock() v.errors = 1 v.warnings = 1 eq_(render('{{ summarize_validation(validation) }}', {'validation': v}), u'1 error, 1 warning') v.errors = 2 eq_(render('{{ summarize_validation(validation) }}', {'validation': v}), u'2 errors, 1 warning') v.warnings = 2 eq_(render('{{ summarize_validation(validation) }}', {'validation': v}), u'2 errors, 2 warnings')
def test_showing_helper(): translation.activate('en-US') tpl = "{{ showing(query, pager) }}" pager = Mock() pager.start_index = lambda: 1 pager.end_index = lambda: 20 pager.paginator.count = 1000 context = {'pager': pager} context['query'] = '' assert render(tpl, context) == 'Showing 1 - 20 of 1000 results' context['query'] = 'foobar' assert (render(tpl, context) == 'Showing 1 - 20 of 1000 results for <strong>foobar</strong>')
def test_no_args(self): s = render('{{ dev_breadcrumbs() }}', {'request': self.request}) doc = pq(s) crumbs = doc('li') eq_(len(crumbs), 2) eq_(crumbs.text(), 'Developer Hub My Submissions') eq_(crumbs.eq(1).children('a'), [])
def test_no_args(self): s = render('{{ dev_breadcrumbs() }}', {'request': self.request}) doc = pq(s) crumbs = doc('li') assert len(crumbs) == 2 assert crumbs.text() == 'Developer Hub My Submissions' assert crumbs.eq(1).children('a') == []
def test_no_args(self): s = render("{{ dev_breadcrumbs() }}", {"request": self.request}) doc = pq(s) crumbs = doc("li") assert len(crumbs) == 2 assert crumbs.text() == "Developer Hub My Submissions" assert crumbs.eq(1).children("a") == []
def test_no_args_with_default(self): s = render("{{ dev_breadcrumbs(add_default=True) }}", {"request": self.request}) doc = pq(s) crumbs = doc("li") assert crumbs.text() == "Add-ons Developer Hub My Submissions" assert crumbs.eq(1).children("a").attr("href") == (reverse("devhub.index")) assert crumbs.eq(2).children("a") == []
def test_showing_helper(): translation.activate('en-US') tpl = "{{ showing(query, pager) }}" pager = Mock() pager.start_index = lambda: 1 pager.end_index = lambda: 20 pager.paginator.count = 1000 context = { 'pager': pager } context['query'] = '' assert render(tpl, context) == 'Showing 1 - 20 of 1000 results' context['query'] = 'foobar' assert (render(tpl, context) == 'Showing 1 - 20 of 1000 results for <strong>foobar</strong>')
def test_log_action_class(): v = Mock() for k, v in six.iteritems(amo.LOG_BY_ID): if v.action_class is not None: cls = 'action-' + v.action_class else: cls = '' assert render('{{ log_action_class(id) }}', {'id': v.id}) == cls
def test_log_action_class(): v = Mock() for k, v in amo.LOG_BY_ID.iteritems(): if v.action_class is not None: cls = 'action-' + v.action_class else: cls = '' assert render('{{ log_action_class(id) }}', {'id': v.id}) == cls
def test_log_action_class(): v = Mock() for k, v in amo.LOG_BY_ID.iteritems(): if v.action_class is not None: cls = 'action-' + v.action_class else: cls = '' eq_(render('{{ log_action_class(id) }}', {'id': v.id}), cls)
def test_no_args_with_default(self): s = render('{{ dev_breadcrumbs(add_default=True) }}', {'request': self.request}) doc = pq(s) crumbs = doc('li') eq_(crumbs.text(), 'Add-ons Developer Hub My Submissions') eq_(crumbs.eq(1).children('a').attr('href'), reverse('devhub.index')) eq_(crumbs.eq(2).children('a'), [])
def test_log_action_class(): v = Mock() for k, v in amo.LOG_BY_ID.iteritems(): if v.action_class is not None: cls = "action-" + v.action_class else: cls = "" assert render("{{ log_action_class(id) }}", {"id": v.id}) == cls
def test_pagination_result_count(): jingo.load_helpers() pager = Mock() pager.start_index = lambda: 1 pager.end_index = lambda: 20 pager.paginator.count = 999 c = dict(pager=pager) assert (u'Results <strong>1</strong>-<strong>20</strong> of ' '<strong>999</strong>') == render( "{{ pagination_result_count(pager) }}", c)
def test_with_items(self): s = render("""{{ dev_breadcrumbs(items=[('/foo', 'foo'), ('/bar', 'bar')]) }}'""", {'request': self.request}) doc = pq(s) crumbs = doc('li>a') assert len(crumbs) == 4 assert crumbs.eq(2).text() == 'foo' assert crumbs.eq(2).attr('href') == '/foo' assert crumbs.eq(3).text() == 'bar' assert crumbs.eq(3).attr('href') == '/bar'
def test_with_items(self): s = render("""{{ dev_breadcrumbs(items=[('/foo', 'foo'), ('/bar', 'bar')]) }}'""", {'request': self.request}) doc = pq(s) crumbs = doc('li>a') eq_(len(crumbs), 4) eq_(crumbs.eq(2).text(), 'foo') eq_(crumbs.eq(2).attr('href'), '/foo') eq_(crumbs.eq(3).text(), 'bar') eq_(crumbs.eq(3).attr('href'), '/bar')
def test_with_addon(self): addon = Mock() addon.name = "Firebug" addon.id = 1843 s = render("""{{ dev_breadcrumbs(addon) }}""", {"request": self.request, "addon": addon}) doc = pq(s) crumbs = doc("li") assert crumbs.text() == "Developer Hub My Submissions Firebug" assert crumbs.eq(1).text() == "My Submissions" assert crumbs.eq(1).children("a").attr("href") == (reverse("devhub.addons")) assert crumbs.eq(2).text() == "Firebug" assert crumbs.eq(2).children("a") == []
def test_showing_helper(): translation.activate('en-US') tpl = "{{ showing(query, tag, pager) }}" pager = Mock() pager.start_index = lambda: 1 pager.end_index = lambda: 20 pager.paginator.count = 1000 c = {} c['query'] = '' c['tag'] = '' c['pager'] = pager eq_('Showing 1 - 20 of 1000 results', render(tpl, c)) c['tag'] = 'foo' eq_('Showing 1 - 20 of 1000 results tagged with <strong>foo</strong>', render(tpl, c)) c['query'] = 'balls' eq_('Showing 1 - 20 of 1000 results for <strong>balls</strong> ' 'tagged with <strong>foo</strong>', render(tpl, c)) c['tag'] = '' eq_('Showing 1 - 20 of 1000 results for <strong>balls</strong>', render(tpl, c))
def test_showing_helper(): translation.activate('en-US') tpl = "{{ showing(query, tag, pager) }}" pager = Mock() pager.start_index = lambda: 1 pager.end_index = lambda: 20 pager.paginator.count = 1000 c = {} c['query'] = '' c['tag'] = '' c['pager'] = pager assert 'Showing 1 - 20 of 1000 results' == render(tpl, c) c['tag'] = 'foo' assert ('Showing 1 - 20 of 1000 results tagged with <strong>foo</strong>' == render(tpl, c)) c['query'] = 'balls' assert ('Showing 1 - 20 of 1000 results for <strong>balls</strong> ' 'tagged with <strong>foo</strong>' == render(tpl, c)) c['tag'] = '' assert ( 'Showing 1 - 20 of 1000 results for <strong>balls</strong>' == render( tpl, c))
def test_with_addon(self): addon = Mock() addon.name = 'Firebug' addon.id = 1843 s = render("""{{ dev_breadcrumbs(addon) }}""", {'request': self.request, 'addon': addon}) doc = pq(s) crumbs = doc('li') eq_(crumbs.text(), 'Developer Hub My Submissions Firebug') eq_(crumbs.eq(1).text(), 'My Submissions') eq_(crumbs.eq(1).children('a').attr('href'), reverse('devhub.addons')) eq_(crumbs.eq(2).text(), 'Firebug') eq_(crumbs.eq(2).children('a'), [])
def test_with_items(self): s = render( """{{ dev_breadcrumbs(items=[('/foo', 'foo'), ('/bar', 'bar')]) }}'""", {"request": self.request}, ) doc = pq(s) crumbs = doc("li>a") assert len(crumbs) == 4 assert crumbs.eq(2).text() == "foo" assert crumbs.eq(2).attr("href") == "/foo" assert crumbs.eq(3).text() == "bar" assert crumbs.eq(3).attr("href") == "/bar"
def test_showing_helper_xss(): translation.activate('en-US') tpl = "{{ showing(query, pager) }}" pager = Mock() pager.start_index = lambda: 1 pager.end_index = lambda: 20 pager.paginator.count = 1000 context = {'pager': pager} context['query'] = '<script>alert(42)</script>' assert (render(tpl, context) == 'Showing 1 - 20 of 1000 results for <strong>' '<script>alert(42)</script></strong>')
def test_with_addon(self): addon = Mock() addon.name = 'Firebug' addon.id = 1843 s = render("""{{ dev_breadcrumbs(addon) }}""", {'request': self.request, 'addon': addon}) doc = pq(s) crumbs = doc('li') assert crumbs.text() == 'Developer Hub My Submissions Firebug' assert crumbs.eq(1).text() == 'My Submissions' assert crumbs.eq(1).children('a').attr('href') == ( reverse('devhub.addons')) assert crumbs.eq(2).text() == 'Firebug' assert crumbs.eq(2).children('a') == []
def test_showing_helper_xss(): translation.activate('en-US') tpl = "{{ showing(query, pager) }}" pager = Mock() pager.start_index = lambda: 1 pager.end_index = lambda: 20 pager.paginator.count = 1000 context = { 'pager': pager } context['query'] = '<script>alert(42)</script>' assert (render(tpl, context) == 'Showing 1 - 20 of 1000 results for <strong>' '<script>alert(42)</script></strong>')
def test_with_addon_and_items(self): addon = Mock() addon.name = 'Firebug' addon.id = 1843 addon.slug = 'fbug' addon.get_dev_url.return_value = reverse('devhub.addons.edit', args=[addon.slug]) s = render("""{{ dev_breadcrumbs(addon, items=[('/foo', 'foo'), ('/bar', 'bar')]) }}""", {'request': self.request, 'addon': addon}) doc = pq(s) crumbs = doc('li') eq_(len(crumbs), 5) eq_(crumbs.eq(2).text(), 'Firebug') eq_(crumbs.eq(2).children('a').attr('href'), addon.get_dev_url()) eq_(crumbs.eq(3).text(), 'foo') eq_(crumbs.eq(3).children('a').attr('href'), '/foo') eq_(crumbs.eq(4).text(), 'bar') eq_(crumbs.eq(4).children('a').attr('href'), '/bar')
def test_with_addon_and_items(self): addon = Mock() addon.name = 'Firebug' addon.id = 1843 addon.slug = 'fbug' addon.get_dev_url.return_value = reverse('devhub.addons.edit', args=[addon.slug]) s = render("""{{ dev_breadcrumbs(addon, items=[('/foo', 'foo'), ('/bar', 'bar')]) }}""", {'request': self.request, 'addon': addon}) doc = pq(s) crumbs = doc('li') assert len(crumbs) == 5 assert crumbs.eq(2).text() == 'Firebug' assert crumbs.eq(2).children('a').attr('href') == addon.get_dev_url() assert crumbs.eq(3).text() == 'foo' assert crumbs.eq(3).children('a').attr('href') == '/foo' assert crumbs.eq(4).text() == 'bar' assert crumbs.eq(4).children('a').attr('href') == '/bar'
def test_with_addon_and_items(self): addon = Mock() addon.name = "Firebug" addon.id = 1843 addon.slug = "fbug" addon.get_dev_url.return_value = reverse("devhub.addons.edit", args=[addon.slug]) s = render( """{{ dev_breadcrumbs(addon, items=[('/foo', 'foo'), ('/bar', 'bar')]) }}""", {"request": self.request, "addon": addon}, ) doc = pq(s) crumbs = doc("li") assert len(crumbs) == 5 assert crumbs.eq(2).text() == "Firebug" assert crumbs.eq(2).children("a").attr("href") == addon.get_dev_url() assert crumbs.eq(3).text() == "foo" assert crumbs.eq(3).children("a").attr("href") == "/foo" assert crumbs.eq(4).text() == "bar" assert crumbs.eq(4).children("a").attr("href") == "/bar"
def test_dev_page_title(): translation.activate('en-US') request = Mock() addon = Mock() addon.name = 'name' ctx = {'request': request, 'addon': addon} title = 'Oh hai!' s1 = render('{{ dev_page_title("%s") }}' % title, ctx) s2 = render('{{ page_title("%s :: Developer Hub") }}' % title, ctx) assert s1 == s2 s1 = render('{{ dev_page_title() }}', ctx) s2 = render('{{ page_title("Developer Hub") }}', ctx) assert s1 == s2 s1 = render('{{ dev_page_title("%s", addon) }}' % title, ctx) s2 = render(f'{{{{ page_title("{title} :: {addon.name}") }}}}', ctx) assert s1 == s2
def test_dev_page_title(): translation.activate('en-US') request = Mock() request.APP = None addon = Mock() addon.name = 'name' ctx = {'request': request, 'addon': addon} title = 'Oh hai!' s1 = render('{{ dev_page_title("%s") }}' % title, ctx) s2 = render('{{ page_title("%s :: Developer Hub") }}' % title, ctx) eq_(s1, s2) s1 = render('{{ dev_page_title() }}', ctx) s2 = render('{{ page_title("Developer Hub") }}', ctx) eq_(s1, s2) s1 = render('{{ dev_page_title("%s", addon) }}' % title, ctx) s2 = render('{{ page_title("%s :: %s") }}' % (title, addon.name), ctx) eq_(s1, s2)
def test_dev_page_title(): translation.activate("en-US") request = Mock() request.APP = None addon = Mock() addon.name = "name" ctx = {"request": request, "addon": addon} title = "Oh hai!" s1 = render('{{ dev_page_title("%s") }}' % title, ctx) s2 = render('{{ page_title("%s :: Developer Hub") }}' % title, ctx) assert s1 == s2 s1 = render("{{ dev_page_title() }}", ctx) s2 = render('{{ page_title("Developer Hub") }}', ctx) assert s1 == s2 s1 = render('{{ dev_page_title("%s", addon) }}' % title, ctx) s2 = render('{{ page_title("%s :: %s") }}' % (title, addon.name), ctx) assert s1 == s2
def test_utf8(self): url = quote(self.raw_url.encode('utf8')) assert render(u'{{ url|display_url }}', {'url': url}) == (self.raw_url)
def test_unicode(self): url = urllib.quote(self.raw_url.encode("utf8")) url = unicode(url, "utf8") assert render("{{ url|display_url }}", {"url": url}) == (self.raw_url)
def test_euc_jp(self): url = urllib.quote(self.raw_url.encode('euc_jp')) eq_(render('{{ url|display_url }}', {'url': url}), self.raw_url)
def test_unicode(self): url = urllib.quote(self.raw_url.encode('utf8')) url = unicode(url, 'utf8') eq_(render('{{ url|display_url }}', {'url': url}), self.raw_url)
def test_euc_jp(self): url = urllib.quote(self.raw_url.encode('euc_jp')) assert render('{{ url|display_url }}', {'url': url}) == ( self.raw_url)
def test_unicode(self): url = quote(self.raw_url.encode('utf8')) url = force_text(force_bytes(url, 'utf8'), 'utf8') assert render(u'{{ url|display_url }}', {'url': url}) == ( self.raw_url)
def test_utf8(self): url = urllib.quote(self.raw_url.encode('utf8')) eq_(render('{{ url|display_url }}', {'url': url}), self.raw_url)
def test_utf8(self): url = urllib.quote(self.raw_url.encode('utf8')) assert render('{{ url|display_url }}', {'url': url}) == ( self.raw_url)
def test_unicode(self): url = quote(self.raw_url.encode('utf8')) url = force_text(force_bytes(url, 'utf8'), 'utf8') assert render(u'{{ url|display_url }}', {'url': url}) == (self.raw_url)
def test_unicode(self): url = urllib.quote(self.raw_url.encode('utf8')) url = unicode(url, 'utf8') assert render('{{ url|display_url }}', {'url': url}) == ( self.raw_url)