本文整理汇总了Python中olympia.addons.forms.EditThemeForm类的典型用法代码示例。如果您正苦于以下问题:Python EditThemeForm类的具体用法?Python EditThemeForm怎么用?Python EditThemeForm使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了EditThemeForm类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_reupload_legacy_header_only
def test_reupload_legacy_header_only(self, make_checksum_mock):
"""
STR the bug this test fixes:
- Reupload a legacy theme (/w footer == leg.png) legacy, header only.
- The header would get saved as 'pending_header.png'.
- The footer would get saved as 'footer.png'.
- On approving, it would see 'footer.png' !== 'leg.png'
- It run move_stored_file('footer.png', 'leg.png').
- But footer.png does not exist. BAM BUG.
"""
make_checksum_mock.return_value = 'comechecksome'
self.theme.header = 'Legacy-header3H.png'
self.theme.footer = 'Legacy-footer3H-Copy.jpg'
self.theme.save()
data = self.get_dict(header_hash='arthro')
self.form = EditThemeForm(data, request=self.request,
instance=self.instance)
assert self.form.is_valid()
self.form.save()
rqt = RereviewQueueTheme.objects.get()
assert rqt.header == 'pending_header.png'
assert rqt.footer == 'Legacy-footer3H-Copy.jpg'
示例2: test_localize_name_description
def test_localize_name_description(self):
data = self.get_dict(name_de='name_de',
description_de='description_de')
self.form = EditThemeForm(data, request=self.request,
instance=self.instance)
assert self.form.is_valid(), self.form.errors
self.form.save()
示例3: test_reupload
def test_reupload(self, save_persona_image_mock,
create_persona_preview_images_mock,
make_checksum_mock):
make_checksum_mock.return_value = 'checksumbeforeyouwrecksome'
data = self.get_dict(header_hash='y0l0', footer_hash='abab')
self.form = EditThemeForm(data, request=self.request,
instance=self.instance)
assert self.form.is_valid()
self.form.save()
dst = os.path.join(user_media_path('addons'), str(self.instance.id))
header_src = os.path.join(settings.TMP_PATH, 'persona_header',
u'y0l0')
footer_src = os.path.join(settings.TMP_PATH, 'persona_footer',
u'abab')
assert save_persona_image_mock.mock_calls == (
[mock.call(src=header_src,
full_dst=os.path.join(dst, 'pending_header.png')),
mock.call(src=footer_src,
full_dst=os.path.join(dst, 'pending_footer.png'))])
rqt = RereviewQueueTheme.objects.filter(theme=self.instance.persona)
assert rqt.count() == 1
assert rqt[0].header == 'pending_header.png'
assert rqt[0].footer == 'pending_footer.png'
assert not rqt[0].dupe_persona
示例4: test_initial
def test_initial(self):
self.form = EditThemeForm(None, request=self.request, instance=self.instance)
# Compare form initial data with post data.
eq_data = self.get_dict()
for k in [k for k in self.form.initial.keys() if k not in ["name", "description"]]:
assert self.form.initial[k] == eq_data[k]
示例5: save_success
def save_success(self):
other_cat = Category.objects.create(type=amo.ADDON_PERSONA)
self.data = {
'accentcolor': '#EFF0FF',
'category': other_cat.id,
'license': amo.LICENSE_CC_BY_NC_SA.id,
'slug': 'swag-lifestyle',
'tags': 'ag',
'textcolor': '#CACACA',
'name_en-us': 'All Day I Dream About Swag',
'description_en-us': 'ADIDAS',
}
self.form = EditThemeForm(self.data, request=self.request,
instance=self.instance)
# Compare form initial data with post data.
eq_data = self.get_dict()
for k in [k for k in self.form.initial.keys()
if k not in ['name', 'description']]:
assert self.form.initial[k] == eq_data[k]
assert self.form.data == self.data
assert self.form.is_valid(), self.form.errors
self.form.save()
示例6: test_initial
def test_initial(self):
self.form = EditThemeForm(None, request=self.request,
instance=self.instance)
# Compare form initial data with post data.
eq_data = self.get_dict()
for k in [k for k in self.form.initial.keys()
if k not in ['name', 'description']]:
eq_(self.form.initial[k], eq_data[k])
示例7: test_name_unique
def test_name_unique(self):
data = self.get_dict(**{'name_en-us': 'Bands Make You Dance'})
Addon.objects.create(type=amo.ADDON_PERSONA, status=amo.STATUS_PUBLIC,
name=data['name_en-us'])
self.form = EditThemeForm(data, request=self.request,
instance=self.instance)
assert not self.form.is_valid()
assert self.form.errors == {
'name':
[('en-us', 'This name is already in use. Please choose another.')]}
示例8: test_reupload_duplicate
def test_reupload_duplicate(self, make_checksum_mock):
make_checksum_mock.return_value = "checksumbeforeyouwrecksome"
theme = amo.tests.addon_factory(type=amo.ADDON_PERSONA)
theme.persona.checksum = "checksumbeforeyouwrecksome"
theme.persona.save()
data = self.get_dict(header_hash="head", footer_hash="foot")
self.form = EditThemeForm(data, request=self.request, instance=self.instance)
assert self.form.is_valid()
self.form.save()
rqt = RereviewQueueTheme.objects.get(theme=self.instance.persona)
assert rqt.dupe_persona == theme.persona
示例9: test_reupload_duplicate
def test_reupload_duplicate(self, make_checksum_mock):
make_checksum_mock.return_value = 'checksumbeforeyouwrecksome'
theme = amo.tests.addon_factory(type=amo.ADDON_PERSONA)
theme.persona.checksum = 'checksumbeforeyouwrecksome'
theme.persona.save()
data = self.get_dict(header_hash='head', footer_hash='foot')
self.form = EditThemeForm(data, request=self.request,
instance=self.instance)
eq_(self.form.is_valid(), True)
self.form.save()
rqt = RereviewQueueTheme.objects.get(theme=self.instance.persona)
eq_(rqt.dupe_persona, theme.persona)
示例10: test_name_unique_multiple_locale_conflicts
def test_name_unique_multiple_locale_conflicts(self):
name = {'name_en-us': 'English', 'name_es': u'Español'}
data = self.get_dict(**name)
Addon.objects.create(
type=amo.ADDON_PERSONA, status=amo.STATUS_PUBLIC,
name={'en-us': 'English', 'es': u'Español'})
self.form = EditThemeForm(data, request=self.request,
instance=self.instance)
assert not self.form.is_valid()
assert self.form.errors == {
'name': [
'This name is already in use. Please choose another.'
]
}
示例11: test_reupload_no_footer
def test_reupload_no_footer(self, save_persona_image_mock, create_persona_preview_images_mock, make_checksum_mock):
make_checksum_mock.return_value = "checksumbeforeyouwrecksome"
data = self.get_dict(header_hash="y0l0", footer_hash="")
self.form = EditThemeForm(data, request=self.request, instance=self.instance)
assert self.form.is_valid()
self.form.save()
dst = os.path.join(user_media_path("addons"), str(self.instance.id))
header_src = os.path.join(settings.TMP_PATH, "persona_header", u"y0l0")
assert save_persona_image_mock.mock_calls == (
[mock.call(src=header_src, full_dst=os.path.join(dst, "pending_header.png"))]
)
rqt = RereviewQueueTheme.objects.filter(theme=self.instance.persona)
assert rqt.count() == 1
assert rqt[0].header == "pending_header.png"
assert rqt[0].footer == ""
assert not rqt[0].dupe_persona
示例12: save_success
def save_success(self):
other_cat = Category.objects.create(type=amo.ADDON_PERSONA)
self.data = {
"accentcolor": "#EFF0FF",
"category": other_cat.id,
"license": amo.LICENSE_CC_BY_NC_SA.id,
"slug": "swag-lifestyle",
"tags": "ag",
"textcolor": "#CACACA",
"name_en-us": "All Day I Dream About Swag",
"description_en-us": "ADIDAS",
}
self.form = EditThemeForm(self.data, request=self.request, instance=self.instance)
# Compare form initial data with post data.
eq_data = self.get_dict()
for k in [k for k in self.form.initial.keys() if k not in ["name", "description"]]:
assert self.form.initial[k] == eq_data[k]
assert self.form.data == self.data
assert self.form.is_valid(), self.form.errors
self.form.save()
示例13: TestEditThemeForm
class TestEditThemeForm(TestCase):
fixtures = ['base/user_2519']
def setUp(self):
super(TestEditThemeForm, self).setUp()
self.populate()
self.request = mock.Mock()
self.request.user = mock.Mock()
self.request.user.groups_list = []
self.request.user.username = 'swagyismymiddlename'
self.request.user.name = 'Sir Swag A Lot'
self.request.user.is_authenticated.return_value = True
def populate(self):
self.instance = Addon.objects.create(
type=amo.ADDON_PERSONA, status=amo.STATUS_PUBLIC,
slug='swag-overload', name='Bands Make Me Dance',
description='tha description')
self.cat = Category.objects.create(
type=amo.ADDON_PERSONA, name='xxxx')
self.instance.addoncategory_set.create(category=self.cat)
self.license = amo.LICENSE_CC_BY.id
self.theme = Persona.objects.create(
persona_id=0, addon_id=self.instance.id, license=self.license,
accentcolor='C0FFEE', textcolor='EFFFFF')
Tag(tag_text='sw').save_tag(self.instance)
Tag(tag_text='ag').save_tag(self.instance)
def get_dict(self, **kw):
data = {
'accentcolor': '#C0FFEE',
'category': self.cat.id,
'license': self.license,
'slug': self.instance.slug,
'tags': 'ag, sw',
'textcolor': '#EFFFFF',
'name_en-us': unicode(self.instance.name),
'description_en-us': unicode(self.instance.description),
}
data.update(**kw)
return data
def test_initial(self):
self.form = EditThemeForm(None, request=self.request,
instance=self.instance)
# Compare form initial data with post data.
eq_data = self.get_dict()
for k in [k for k in self.form.initial.keys()
if k not in ['name', 'description']]:
assert self.form.initial[k] == eq_data[k]
def save_success(self):
other_cat = Category.objects.create(type=amo.ADDON_PERSONA)
self.data = {
'accentcolor': '#EFF0FF',
'category': other_cat.id,
'license': amo.LICENSE_CC_BY_NC_SA.id,
'slug': 'swag-lifestyle',
'tags': 'ag',
'textcolor': '#CACACA',
'name_en-us': 'All Day I Dream About Swag',
'description_en-us': 'ADIDAS',
}
self.form = EditThemeForm(self.data, request=self.request,
instance=self.instance)
# Compare form initial data with post data.
eq_data = self.get_dict()
for k in [k for k in self.form.initial.keys()
if k not in ['name', 'description']]:
assert self.form.initial[k] == eq_data[k]
assert self.form.data == self.data
assert self.form.is_valid(), self.form.errors
self.form.save()
def test_success(self):
self.save_success()
self.instance = self.instance.reload()
assert unicode(self.instance.persona.accentcolor) == (
self.data['accentcolor'].lstrip('#'))
assert self.instance.categories.all()[0].id == self.data['category']
assert self.instance.persona.license == self.data['license']
assert unicode(self.instance.name) == self.data['name_en-us']
assert unicode(self.instance.description) == (
self.data['description_en-us'])
self.assertSetEqual(
set(self.instance.tags.values_list('tag_text', flat=True)),
{self.data['tags']})
assert unicode(self.instance.persona.textcolor) == (
self.data['textcolor'].lstrip('#'))
def test_success_twice(self):
"""Form should be just fine when POSTing twice."""
self.save_success()
self.form.save()
#.........这里部分代码省略.........
示例14: TestEditThemeForm
class TestEditThemeForm(TestCase):
fixtures = ["base/user_2519"]
def setUp(self):
super(TestEditThemeForm, self).setUp()
self.populate()
self.request = mock.Mock()
self.request.user = mock.Mock()
self.request.user.groups_list = []
self.request.user.username = "swagyismymiddlename"
self.request.user.name = "Sir Swag A Lot"
self.request.user.is_authenticated.return_value = True
def populate(self):
self.instance = Addon.objects.create(
type=amo.ADDON_PERSONA,
status=amo.STATUS_PUBLIC,
slug="swag-overload",
name="Bands Make Me Dance",
description="tha description",
)
self.cat = Category.objects.create(type=amo.ADDON_PERSONA, name="xxxx")
self.instance.addoncategory_set.create(category=self.cat)
self.license = amo.LICENSE_CC_BY.id
self.theme = Persona.objects.create(
persona_id=0, addon_id=self.instance.id, license=self.license, accentcolor="C0FFEE", textcolor="EFFFFF"
)
Tag(tag_text="sw").save_tag(self.instance)
Tag(tag_text="ag").save_tag(self.instance)
def get_dict(self, **kw):
data = {
"accentcolor": "#C0FFEE",
"category": self.cat.id,
"license": self.license,
"slug": self.instance.slug,
"tags": "ag, sw",
"textcolor": "#EFFFFF",
"name_en-us": unicode(self.instance.name),
"description_en-us": unicode(self.instance.description),
}
data.update(**kw)
return data
def test_initial(self):
self.form = EditThemeForm(None, request=self.request, instance=self.instance)
# Compare form initial data with post data.
eq_data = self.get_dict()
for k in [k for k in self.form.initial.keys() if k not in ["name", "description"]]:
assert self.form.initial[k] == eq_data[k]
def save_success(self):
other_cat = Category.objects.create(type=amo.ADDON_PERSONA)
self.data = {
"accentcolor": "#EFF0FF",
"category": other_cat.id,
"license": amo.LICENSE_CC_BY_NC_SA.id,
"slug": "swag-lifestyle",
"tags": "ag",
"textcolor": "#CACACA",
"name_en-us": "All Day I Dream About Swag",
"description_en-us": "ADIDAS",
}
self.form = EditThemeForm(self.data, request=self.request, instance=self.instance)
# Compare form initial data with post data.
eq_data = self.get_dict()
for k in [k for k in self.form.initial.keys() if k not in ["name", "description"]]:
assert self.form.initial[k] == eq_data[k]
assert self.form.data == self.data
assert self.form.is_valid(), self.form.errors
self.form.save()
def test_success(self):
self.save_success()
self.instance = self.instance.reload()
assert unicode(self.instance.persona.accentcolor) == (self.data["accentcolor"].lstrip("#"))
assert self.instance.categories.all()[0].id == self.data["category"]
assert self.instance.persona.license == self.data["license"]
assert unicode(self.instance.name) == self.data["name_en-us"]
assert unicode(self.instance.description) == (self.data["description_en-us"])
self.assertSetEqual(self.instance.tags.values_list("tag_text", flat=True), [self.data["tags"]])
assert unicode(self.instance.persona.textcolor) == (self.data["textcolor"].lstrip("#"))
def test_success_twice(self):
"""Form should be just fine when POSTing twice."""
self.save_success()
self.form.save()
def test_name_unique(self):
data = self.get_dict(**{"name_en-us": "Bands Make You Dance"})
Addon.objects.create(type=amo.ADDON_PERSONA, status=amo.STATUS_PUBLIC, name=data["name_en-us"])
self.form = EditThemeForm(data, request=self.request, instance=self.instance)
assert not self.form.is_valid()
assert self.form.errors == {"name": [("en-us", "This name is already in use. Please choose another.")]}
def test_localize_name_description(self):
data = self.get_dict(name_de="name_de", description_de="description_de")
#.........这里部分代码省略.........