2121from amo .urlresolvers import reverse
2222from addons .models import (Addon , AddonCategory , AddonDeviceType , AddonUser ,
2323 Category )
24- from addons .utils import reverse_name_lookup
2524from apps .users .models import UserNotification
2625from apps .users .notifications import app_surveys
2726from constants .applications import DEVICE_TYPES
@@ -41,9 +40,12 @@ class TestSubmit(amo.tests.TestCase):
4140 fixtures = fixture ('user_999' )
4241
4342 def setUp (self ):
44- request_finished .disconnect (es .hold .process , dispatch_uid = 'process_es_tasks_on_finish' )
45- self .gia_mock = mock .patch ('mkt.developers.tasks.generate_image_assets' ).__enter__ ()
46- self .fi_mock = mock .patch ('mkt.developers.tasks.fetch_icon' ).__enter__ ()
43+ request_finished .disconnect (es .hold .process ,
44+ dispatch_uid = 'process_es_tasks_on_finish' )
45+ self .gia_mock = mock .patch (
46+ 'mkt.developers.tasks.generate_image_assets' ).__enter__ ()
47+ self .fi_mock = mock .patch (
48+ 'mkt.developers.tasks.fetch_icon' ).__enter__ ()
4749 self .user = self .get_user ()
4850 assert self .client .login (username = self .user .email , password = 'password' )
4951
@@ -407,7 +409,8 @@ class BasePackagedAppTest(BaseUploadTest, UploadAddon, amo.tests.TestCase):
407409 fixtures = fixture ('webapp_337141' , 'user_999' )
408410
409411 def setUp (self ):
410- request_finished .disconnect (es .hold .process , dispatch_uid = 'process_es_tasks_on_finish' )
412+ request_finished .disconnect (es .hold .process ,
413+ dispatch_uid = 'process_es_tasks_on_finish' )
411414 super (BasePackagedAppTest , self ).setUp ()
412415 self .create_switch (name = 'allow-packaged-app-uploads' )
413416 self .app = Webapp .objects .get (pk = 337141 )
@@ -492,8 +495,10 @@ class TestDetails(TestSubmit):
492495 fixtures = fixture ('webapp_337141' , 'user_999' , 'user_10482' )
493496
494497 def setUp (self ):
495- self .gia_mock = mock .patch ('mkt.developers.tasks.generate_image_assets' ).__enter__ ()
496- self .fi_mock = mock .patch ('mkt.developers.tasks.fetch_icon' ).__enter__ ()
498+ self .gia_mock = mock .patch (
499+ 'mkt.developers.tasks.generate_image_assets' ).__enter__ ()
500+ self .fi_mock = mock .patch (
501+ 'mkt.developers.tasks.fetch_icon' ).__enter__ ()
497502 super (TestDetails , self ).setUp ()
498503 self .webapp = self .get_webapp ()
499504 self .webapp .update (status = amo .STATUS_NULL )
@@ -727,12 +732,6 @@ def test_icon(self):
727732 assert os .path .exists (os .path .join (ad .get_icon_dir (), fn )), (
728733 'Expected %s in %s' % (fn , os .listdir (ad .get_icon_dir ())))
729734
730- def _setup_other_webapp (self ):
731- self ._step ()
732- # Generate another webapp to test name uniqueness.
733- app = amo .tests .addon_factory (type = amo .ADDON_WEBAPP , name = 'Cool App' )
734- eq_ (reverse_name_lookup (app .name , webapp = True ), app .id )
735-
736735 def test_screenshot_or_video_required (self ):
737736 self ._step ()
738737 data = self .get_dict ()
@@ -762,6 +761,14 @@ def test_unsaved_screenshot(self):
762761 eq_ (form .find ('input[name=files-0-unsaved_image_data]' ).val (),
763762 preview_uri )
764763
764+ def test_unique_allowed (self ):
765+ self ._step ()
766+ r = self .client .post (self .url , self .get_dict (name = self .webapp .name ))
767+ self .assertNoFormErrors (r )
768+ app = Webapp .objects .exclude (app_slug = self .webapp .app_slug )[0 ]
769+ self .assert3xx (r , reverse ('submit.app.done' , args = [app .app_slug ]))
770+ eq_ (self .get_webapp ().status , amo .STATUS_PENDING )
771+
765772 def test_slug_invalid (self ):
766773 self ._step ()
767774 # Submit an invalid slug.
0 commit comments