Skip to content
This repository has been archived by the owner on Mar 15, 2018. It is now read-only.

Commit

Permalink
Updated so mini-manifest uses UUID in URL (bug 818120)
Browse files Browse the repository at this point in the history
  • Loading branch information
robhudson committed Dec 13, 2012
1 parent c54d639 commit a1bb5a7
Show file tree
Hide file tree
Showing 7 changed files with 11 additions and 9 deletions.
2 changes: 1 addition & 1 deletion mkt/detail/tests/test_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -911,7 +911,7 @@ def setUp(self):
test_package.close()
latest_file.update(hash=latest_file.generate_hash())

self.url = self.app.get_detail_url('manifest')
self.url = self.app.get_manifest_url()

def tearDown(self):
storage.delete(self.app.get_latest_file().file_path)
Expand Down
1 change: 0 additions & 1 deletion mkt/detail/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@

urlpatterns = patterns('',
url('^$', views.detail, name='detail'),
url('^manifest.webapp$', views.manifest, name='detail.manifest'),
url('^abuse$', views.abuse, name='detail.abuse'),
url('^abuse/recaptcha$', views.abuse_recaptcha,
name='detail.abuse.recaptcha'),
Expand Down
6 changes: 3 additions & 3 deletions mkt/detail/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
from django import http
from django.conf import settings
from django.core.files.storage import default_storage as storage
from django.shortcuts import redirect
from django.shortcuts import get_object_or_404, redirect
from django.views.decorators.http import etag

import commonware.log
Expand Down Expand Up @@ -58,13 +58,13 @@ def detail(request, addon):
return jingo.render(request, 'detail/app.html', ctx)


@addon_all_view
def manifest(request, addon):
def manifest(request, uuid):
"""Returns the "mini" manifest for packaged apps.
If not a packaged app, returns an empty JSON doc.
"""
addon = get_object_or_404(Webapp, guid=uuid, is_packaged=True)

is_reviewer = acl.check_reviewer(request)
is_dev = addon.has_author(request.amo_user)
Expand Down
3 changes: 1 addition & 2 deletions mkt/site/tests/test_helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -300,11 +300,10 @@ def test_install_src(self):

@mock.patch.object(settings, 'SITE_URL', 'http://omg.org/yes')
def test_is_packaged(self):
manifest_url = ('http://omg.org/yes' +
self.webapp.get_detail_url('manifest'))

self.webapp.is_packaged = True

manifest_url = self.webapp.get_manifest_url()
doc = pq(market_tile(self.context, self.webapp))
# NOTE: PyQuery won't parse attributes with underscores
# or uppercase letters.
Expand Down
4 changes: 4 additions & 0 deletions mkt/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
users_patterns as users_users_patterns)
from mkt.account.urls import (purchases_patterns, settings_patterns,
users_patterns as mkt_users_patterns)
from mkt.detail.views import manifest as mini_manifest
from mkt.developers.views import login
from mkt.purchase.urls import webpay_services_patterns
from mkt.ratings.urls import theme_review_patterns
Expand All @@ -25,6 +26,7 @@
handler500 = 'mkt.site.views.handler500'

ADDON_ID = r"""(?P<addon_id>[^/<>"']+)"""
ADDON_UUID = r'(?P<uuid>[\w]{8}-[\w]{4}-[\w]{4}-[\w]{4}-[\w]{12})'


urlpatterns = patterns('',
Expand All @@ -33,6 +35,8 @@

# App Detail pages.
('^app/%s/' % amo.APP_SLUG, include('mkt.detail.urls')),
url('^app/%s/manifest.webapp$' % ADDON_UUID, mini_manifest,
name='detail.manifest'),

# Browse pages.
('^apps/', include('mkt.browse.urls')),
Expand Down
2 changes: 1 addition & 1 deletion mkt/webapps/fixtures/webapps/337141-steamcube.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"trusted": false,
"total_contributions": null,
"locale_disambiguation": null,
"guid": null,
"guid": "214b364a-b419-4b26-8d50-6873bfd9e431",
"weekly_downloads": 9999,
"support_url": null,
"disabled_by_user": false,
Expand Down
2 changes: 1 addition & 1 deletion mkt/webapps/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -279,7 +279,7 @@ def get_manifest_url(self):
"""
if self.is_packaged:
if self.current_version:
return absolutify(self.get_detail_url('manifest'))
return absolutify(reverse('detail.manifest', args=[self.guid]))
else:
# Invalid statuses don't have `current_version`.
# TODO: Ask Rob about reviewers being able to install
Expand Down

0 comments on commit a1bb5a7

Please sign in to comment.