def test_create_render_bitfield_template_tag_singleton(self, mock_loader): template = Template("{% for obj in flags %}Hello: {{ obj.str }}\n{% endfor %}") mock_loader.get_template.return_value = DjangoTemplate(template, mock_loader) func = flag_utils.create_render_bitfield_template_tag({"p": {"str": "person", "singleton": True}, "a": {"str": "animal"}}, "test.html") flag_obj = BitHandler(1 | 2, ["a", "p"]) self.assertEqual(func(flag_obj), "Hello: person\n")
def test_create_render_bitfield_template_tag_singleton(self, mock_loader): template = Template("{% for obj in flags %}Hello: {{ obj.str }}\n{% endfor %}") mock_loader.get_template.return_value = DjangoTemplate(template, mock_loader) func = flag_utils.create_render_bitfield_template_tag( {"p": {"str": "person", "singleton": True}, "a": {"str": "animal"}}, "test.html") flag_obj = (("a", True), ("p", True)) self.assertEqual(func(flag_obj), "Hello: person\n")
def test_unicode(self): flags = {"snowman": { "title": u"Snowman", "str": u"☃", "class": "awesome-snowman", }} func = flag_utils.create_render_bitfield_template_tag(flags) flag_obj = (("snowman", True),) output = func(flag_obj) self.assertIn(u'<span class="label awesome-snowman"', output) self.assertIn(u"☃", output)
def test_unicode(self): flags = {"snowman": { "title": u"Snowman", "str": u"☃", "class": "awesome-snowman", }} func = flag_utils.create_render_bitfield_template_tag(flags) flag_obj = BitHandler(1, ["snowman"]) output = func(flag_obj) self.assertIn(u'<span class="label awesome-snowman"', output) self.assertIn(u"☃", output)
def test_create_render_bitfield_template_tag_loads_template( self, mock_loader): template = Template( "{% for obj in flags %}Hello: {{ obj.str }}\n{% endfor %}") mock_loader.get_template.return_value = DjangoTemplate( template, mock_loader) func = flag_utils.create_render_bitfield_template_tag( { "p": { "str": "person" }, "a": { "str": "animal" } }, "test.html") flag_obj = (("a", True), ("p", True)) self.assertEqual(func(flag_obj), "Hello: animal\nHello: person\n")
def test_create_render_bitfield_template_tag_no_values(self): # empty flag definition, so all values will be "invalid" func = flag_utils.create_render_bitfield_template_tag({}) flag_obj = (("new", True), ("read", True)) self.assertEqual(func(flag_obj).strip(), " ")
}, "read": { "title": ugettext_lazy("Unread message"), "str": ugettext_lazy("Unread"), "class": "label-info", "inverse": True, }, "important": { "title": ugettext_lazy("Message has been marked as important"), "str": ugettext_lazy("Important"), "class": "label-danger", }, "pinned": { "title": ugettext_lazy("Inbox has been pinned"), "str": ugettext_lazy("Pinned"), "class": "label-warning", }, "disabled": { "title": ugettext_lazy("Inbox has been disabled"), "str": ugettext_lazy("Disabled"), "class": "label-default", "singleton": True, }, } # alias certain flags FLAGS_TO_TAGS["unified_has_new_messages"] = FLAGS_TO_TAGS["new"] render_flags = create_render_bitfield_template_tag(FLAGS_TO_TAGS) register.filter("render_flags", render_flags)
"class": "label-primary", "inverse": True, }, "read": { "title": ugettext_lazy("Unread message"), "str": ugettext_lazy("Unread"), "class": "label-info", "inverse": True, }, "important": { "title": ugettext_lazy("Message has been marked as important"), "str": ugettext_lazy("Important"), "class": "label-danger", }, "pinned": { "title": ugettext_lazy("Inbox has been pinned"), "str": ugettext_lazy("Pinned"), "class": "label-warning", }, "disabled": { "title": ugettext_lazy("Inbox has been disabled"), "str": ugettext_lazy("Disabled"), "class": "label-default", "singleton": True, }, } render_flags = create_render_bitfield_template_tag(FLAGS_TO_TAGS) register.filter("render_flags", render_flags)