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

Commit

Permalink
add app-domain to the receipt (bug 867265)
Browse files Browse the repository at this point in the history
  • Loading branch information
Andy McKay committed Jun 27, 2013
1 parent 53fb0b0 commit e0e01db
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 5 deletions.
6 changes: 3 additions & 3 deletions mkt/receipts/tests/test_models.py
Expand Up @@ -135,13 +135,13 @@ def test_receipt_data_reviewer(self):
assert receipt['exp'] > (calendar.timegm(time.gmtime()) +
(60 * 60 * 24) - TEST_LEEWAY)

@mock.patch.object(settings, 'SITE_URL', 'https://foo.com')
def test_receipt_packaged(self):
webapp = addon_factory(type=amo.ADDON_WEBAPP, is_packaged=True)
webapp = addon_factory(type=amo.ADDON_WEBAPP, is_packaged=True,
app_domain='app://foo.com')
user = UserProfile.objects.get(pk=5497308)
ins = self.create_install(user, webapp)
receipt = self.for_user(ins, 'developer')
eq_(receipt['product']['url'], settings.SITE_URL)
eq_(receipt['product']['url'], 'app://foo.com')

@mock.patch.object(settings, 'SIGNING_SERVER_ACTIVE', True)
@mock.patch('mkt.receipts.utils.sign')
Expand Down
4 changes: 2 additions & 2 deletions mkt/receipts/utils.py
Expand Up @@ -18,11 +18,11 @@ def create_receipt(installed, flavour=None):
'Invalid flavour: %s' % flavour)

webapp = installed.addon
origin = (settings.SITE_URL if webapp.is_packaged else webapp.origin)
time_ = calendar.timegm(time.gmtime())
typ = 'purchase-receipt'

product = {'url': origin, 'storedata': urlencode({'id': int(webapp.pk)})}
product = {'storedata': urlencode({'id': int(webapp.pk)}),
'url': webapp.origin}

# Generate different receipts for reviewers or developers.
expiry = time_ + settings.WEBAPPS_RECEIPT_EXPIRY_SECONDS
Expand Down
3 changes: 3 additions & 0 deletions mkt/webapps/models.py
Expand Up @@ -313,6 +313,9 @@ def device_types(self):

@property
def origin(self):
if self.is_packaged:
return self.app_domain

parsed = urlparse.urlparse(self.get_manifest_url())
return '%s://%s' % (parsed.scheme, parsed.netloc)

Expand Down
5 changes: 5 additions & 0 deletions mkt/webapps/tests/test_models.py
Expand Up @@ -154,6 +154,11 @@ def test_get_origin(self):
webapp = Webapp(manifest_url=url)
eq_(webapp.origin, 'http://www.xx.com:4000')

def test_get_packaged_origin(self):
webapp = Webapp(app_domain='app://foo.com', is_packaged=True,
manifest_url='')
eq_(webapp.origin, 'app://foo.com')

def test_reviewed(self):
assert not Webapp().is_unreviewed()

Expand Down

0 comments on commit e0e01db

Please sign in to comment.