def test_get_latest_master_release_not_permitted(self): self.linked_app.master = self.plain_master_app.get_id release = self.plain_master_app.make_build() release.is_released = True release.save() self.addCleanup(release.delete) latest_master_release = self.linked_app.get_latest_master_release() self.assertEqual(release.get_id, latest_master_release.get_id) self.domain_link.linked_domain = 'other' self.domain_link.save() get_domain_master_link.clear('domain-2') def _revert(): self.domain_link.linked_domain = 'domain-2' self.domain_link.save() self.addCleanup(_revert) with self.assertRaises(ActionNotPermitted): # re-fetch to bust memoize cache LinkedApplication.get( self.linked_app._id).get_latest_master_release()
def save(self, *args, **kwargs): super(DomainLink, self).save(*args, **kwargs) from corehq.apps.linked_domain.dbaccessors import ( get_domain_master_link, get_linked_domains, is_linked_domain, is_master_linked_domain ) get_domain_master_link.clear(self.linked_domain) is_linked_domain.clear(self.linked_domain) get_linked_domains.clear(self.master_domain) is_master_linked_domain.clear(self.master_domain)
def test_get_latest_master_release_not_permitted(self): self.linked_app.master = self.plain_master_app.get_id release = self.plain_master_app.make_build() release.is_released = True release.save() self.addCleanup(release.delete) latest_master_release = self.linked_app.get_latest_master_release() self.assertEqual(release.get_id, latest_master_release.get_id) self.domain_link.linked_domain = 'other' self.domain_link.save() get_domain_master_link.clear('domain-2') def _revert(): self.domain_link.linked_domain = 'domain-2' self.domain_link.save() self.addCleanup(_revert) with self.assertRaises(ActionNotPermitted): # re-fetch to bust memoize cache LinkedApplication.get(self.linked_app._id).get_latest_master_release()