Exemplo n.º 1
0
 def test_valid_addon(self):
     addon_factory(slug='bar')
     form = ReplacementAddonAdmin(
         ReplacementAddon, admin.site).get_form(None)(
             {'guid': 'foo', 'path': '/addon/bar/'})
     assert form.is_valid(), form.errors
     assert form.cleaned_data['path'] == '/addon/bar/'
Exemplo n.º 2
0
    def test_invalid_urls(self):
        assert not ReplacementAddonAdmin(
            ReplacementAddon, admin.site).get_form(None)(
                {'guid': 'foo', 'path': 'ftp://google.com/'}).is_valid()
        assert not ReplacementAddonAdmin(
            ReplacementAddon, admin.site).get_form(None)(
                {'guid': 'foo', 'path': 'https://88999@~'}).is_valid()
        assert not ReplacementAddonAdmin(
            ReplacementAddon, admin.site).get_form(None)(
                {'guid': 'foo', 'path': 'https://www. rutrt/'}).is_valid()

        path = '/addon/bar/'
        site = settings.SITE_URL
        full_url = site + path
        # path is okay
        assert ReplacementAddonAdmin(
            ReplacementAddon, admin.site).get_form(None)(
                {'guid': 'foo', 'path': path}).is_valid()
        # but we don't allow full urls for AMO paths
        form = ReplacementAddonAdmin(
            ReplacementAddon, admin.site).get_form(None)(
                {'guid': 'foo', 'path': full_url})
        assert not form.is_valid()
        assert ('Paths for [%s] should be relative, not full URLs including '
                'the domain name' % site in form.errors['path'])
Exemplo n.º 3
0
 def test_valid_collection(self):
     bagpuss = user_factory(username='******')
     collection_factory(slug='stuff', author=bagpuss)
     form = ReplacementAddonAdmin(ReplacementAddon, None).get_form(None)(
         {'guid': 'foo', 'path': '/collections/bagpuss/stuff/'})
     assert form.is_valid(), form.errors
     assert form.cleaned_data['path'] == '/collections/bagpuss/stuff/'
Exemplo n.º 4
0
 def test_invalid(self):
     form = ReplacementAddonAdmin(ReplacementAddon, None).get_form(None)({
         'guid':
         'foo',
         'path':
         '/invalid_url/'
     })
     assert not form.is_valid()
Exemplo n.º 5
0
 def test_url(self):
     form = ReplacementAddonAdmin(ReplacementAddon, None).get_form(None)({
         'guid':
         'foo',
         'path':
         'https://google.com/'
     })
     assert form.is_valid()
Exemplo n.º 6
0
 def test_valid_addon(self):
     addon_factory(slug='bar')
     form = ReplacementAddonAdmin(ReplacementAddon, None).get_form(None)({
         'guid':
         'foo',
         'path':
         '/addon/bar/'
     })
     assert form.is_valid(), form.errors
Exemplo n.º 7
0
 def test_url(self):
     form = ReplacementAddonAdmin(ReplacementAddon,
                                  admin.site).get_form(None)({
                                      'guid':
                                      'foo',
                                      'path':
                                      'https://google.com/'
                                  })
     assert form.is_valid()
     assert form.cleaned_data['path'] == 'https://google.com/'
Exemplo n.º 8
0
 def test_valid_collection(self):
     bagpuss = user_factory(username='******')
     collection_factory(slug='stuff', author=bagpuss)
     form = ReplacementAddonAdmin(ReplacementAddon, None).get_form(None)({
         'guid':
         'foo',
         'path':
         '/collections/bagpuss/stuff/'
     })
     assert form.is_valid(), form.errors
Exemplo n.º 9
0
    def test_invalid_urls(self):
        assert not ReplacementAddonAdmin(ReplacementAddon, None).get_form(
            None)({'guid': 'foo', 'path': 'ftp://google.com/'}).is_valid()
        assert not ReplacementAddonAdmin(ReplacementAddon, None).get_form(
            None)({'guid': 'foo', 'path': 'https://88999@~'}).is_valid()
        assert not ReplacementAddonAdmin(ReplacementAddon, None).get_form(
            None)({'guid': 'foo', 'path': 'https://www. rutrt/'}).is_valid()

        path = '/addon/bar/'
        site = settings.SITE_URL
        full_url = site + path
        # path is okay
        assert ReplacementAddonAdmin(ReplacementAddon, None).get_form(
            None)({'guid': 'foo', 'path': path}).is_valid()
        # but we don't allow full urls for AMO paths
        form = ReplacementAddonAdmin(ReplacementAddon, None).get_form(
            None)({'guid': 'foo', 'path': full_url})
        assert not form.is_valid()
        assert ('Paths for [%s] should be relative, not full URLs including '
                'the domain name' % site in form.errors['__all__'])
Exemplo n.º 10
0
 def test_url(self):
     form = ReplacementAddonAdmin(
         ReplacementAddon, admin.site).get_form(None)(
             {'guid': 'foo', 'path': 'https://google.com/'})
     assert form.is_valid()
     assert form.cleaned_data['path'] == 'https://google.com/'
Exemplo n.º 11
0
 def test_invalid(self):
     form = ReplacementAddonAdmin(
         ReplacementAddon, admin.site).get_form(None)(
             {'guid': 'foo', 'path': '/invalid_url/'})
     assert not form.is_valid()