def setUp(self): self.app = Webapp.objects.get(pk=337141) self.app.update(is_packaged=True, status=amo.WEBAPPS_UNREVIEWED_STATUS) self.dev = self.app.authors.all()[0] self.regular = UserProfile.objects.get(pk=999) self.version = self.app.versions.latest() self.file = self.version.all_files[0] self.versions = [ self.version, self.app.versions.create(version='%s.1' % self.version.version) ] self.files = [ self.file, File.objects.create(version=self.versions[1], filename='webapp.zip') ] self.login_as_editor() for file_obj in self.files: src = os.path.join(settings.ROOT, packaged_app) try: os.makedirs(os.path.dirname(file_obj.file_path)) except OSError: pass shutil.copyfile(src, file_obj.file_path) self.file_viewer = FileViewer(self.file, is_webapp=True) # Setting this to True, so we are delaying the extraction of files, # in the tests, the files won't be extracted. # Most of these tests extract as needed to. self.create_switch(name='delay-file-viewer')
def setUp(self): self.addon = Addon.objects.get(pk=3615) self.dev = self.addon.authors.all()[0] self.regular = UserProfile.objects.get(pk=999) self.version = self.addon.versions.latest() self.file = self.version.all_files[0] self.file_two = File() self.file_two.version = self.version self.file_two.filename = 'dictionary-test.xpi' self.file_two.save() self.login_as_editor() self.old_tmp = settings.TMP_PATH self.old_addon = settings.ADDONS_PATH settings.TMP_PATH = tempfile.mkdtemp() settings.ADDONS_PATH = tempfile.mkdtemp() dictionary = 'apps/files/fixtures/files/dictionary-test.xpi' for file_obj in [self.file, self.file_two]: src = os.path.join(settings.ROOT, dictionary) try: os.makedirs(os.path.dirname(file_obj.file_path)) except OSError: pass shutil.copyfile(src, file_obj.file_path) self.file_viewer = FileViewer(self.file)
def setUp(self): self.addon = Addon.objects.get(pk=3615) self.dev = self.addon.authors.all()[0] self.regular = UserProfile.objects.get(pk=999) self.version = self.addon.versions.latest() self.file = self.version.all_files[0] self.file_two = File() self.file_two.version = self.version self.file_two.filename = 'dictionary-test.xpi' self.file_two.save() self.login_as_editor() self.old_tmp = settings.TMP_PATH self.old_addon = settings.ADDONS_PATH settings.TMP_PATH = tempfile.mkdtemp() settings.ADDONS_PATH = tempfile.mkdtemp() for file_obj in [self.file, self.file_two]: src = os.path.join(settings.ROOT, dictionary) try: os.makedirs(os.path.dirname(file_obj.file_path)) except OSError: pass shutil.copyfile(src, file_obj.file_path) self.file_viewer = FileViewer(self.file) # Setting this to True, so we are delaying the extraction of files, # in the tests, the files won't be extracted. # Most of these tests extract as needed to. Switch.objects.create(name='delay-file-viewer', active=True)
def setUp(self): self.left = File.objects.get(pk=25753) self.viewer = FileViewer(self.left) if not os.path.exists(os.path.dirname(self.viewer.src)): os.makedirs(os.path.dirname(self.viewer.src)) open(self.viewer.src, 'w')
def setUp(self): self.left = File.objects.get(pk=25753) self.viewer = FileViewer(self.left) if not os.path.exists(os.path.dirname(self.viewer.src)): os.makedirs(os.path.dirname(self.viewer.src)) with storage.open(self.viewer.src, 'w') as f: f.write('some data\n')
def wrapper(request, file_id, key, *args, **kw): viewer = FileViewer(get_object_or_404(File, pk=file_id)) token = request.GET.get('token') if not token: log.error('Denying access to %s, no token.' % viewer.file.id) raise PermissionDenied if not Token.valid(token, [viewer.file.id, key]): log.error('Denying access to %s, token invalid.' % viewer.file.id) raise PermissionDenied return func(request, viewer, key, *args, **kw)
def wrapper(request, file_id, key, *args, **kw): viewer = FileViewer(get_object_or_404(File, pk=file_id)) token = request.GET.get('token') if not token: log.error('Denying access to %s, no token.' % viewer.file.id) return http.HttpResponseForbidden() if not Token.valid(token, [viewer.file.id, key]): log.error('Denying access to %s, token invalid.' % viewer.file.id) return http.HttpResponseForbidden() return func(request, viewer, key, *args, **kw)
def wrapper(request, file_id, *args, **kw): file_ = get_object_or_404(File, pk=file_id) result = allowed(request, file_) if result is not True: return result obj = FileViewer(file_, is_webapp=kwargs.get('is_webapp', False)) response = func(request, obj, *args, **kw) if obj.selected: response['ETag'] = '"%s"' % obj.selected.get('md5') response['Last-Modified'] = http_date(obj.selected.get('modified')) return response
def setUp(self): dictionary = 'apps/files/fixtures/files/dictionary-test.xpi' src = os.path.join(settings.ROOT, dictionary) file_obj = Mock() file_obj.id = file_obj.pk = 1 file_obj.file_path = src self.viewer = FileViewer(file_obj) self.old_tmp = settings.TMP_PATH settings.TMP_PATH = tempfile.mkdtemp()
def wrapper(request, file_id, *args, **kw): file_ = get_object_or_404(File, pk=file_id) result = allowed(request, file_) if result is not True: return result try: obj = FileViewer(file_, ) except ObjectDoesNotExist: raise http.Http404 response = func(request, obj, *args, **kw) if obj.selected: response['ETag'] = '"%s"' % obj.selected.get('md5') response['Last-Modified'] = http_date(obj.selected.get('modified')) return response
def setUp(self): self.addon = Addon.objects.get(pk=3615) self.dev = self.addon.authors.all()[0] self.regular = UserProfile.objects.get(pk=999) self.version = self.addon.versions.latest() self.file = self.version.all_files[0] p = Platform.objects.filter(id__in=(amo.PLATFORM_WIN.id, amo.PLATFORM_LINUX.id, amo.PLATFORM_MAC.id)) self.file.update(platform=p[0]) self.files = [ self.file, File.objects.create(version=self.version, platform=p[1], hash='abc123', filename='dictionary-test.xpi'), File.objects.create(version=self.version, platform=p[2], hash='abc123', filename='dictionary-test.xpi') ] self.login_as_editor() for file_obj in self.files: src = os.path.join(settings.ROOT, dictionary) try: os.makedirs(os.path.dirname(file_obj.file_path)) except OSError: pass shutil.copyfile(src, file_obj.file_path) self.file_viewer = FileViewer(self.file) # Setting this to True, so we are delaying the extraction of files, # in the tests, the files won't be extracted. # Most of these tests extract as needed to. Switch.objects.get_or_create(name='delay-file-viewer', active=True)
def setUp(self): super(TestFileHelper, self).setUp() self.viewer = FileViewer(make_file(1, get_file('dictionary-test.xpi')))
def setUp(self): self.viewer = FileViewer(make_file(1, get_file('dictionary-test.xpi')))
def test_default_package_json(self): viewer = FileViewer(make_file(3, get_file('new-format-0.0.1.xpi'))) viewer.extract() assert viewer.get_default(None) == 'package.json'
def test_default_webextension(self): viewer = FileViewer(make_file(2, get_file('webextension.xpi'))) viewer.extract() assert viewer.get_default(None) == 'manifest.json'
def wrapper(request, file_id, *args, **kw): file = get_object_or_404(File, pk=file_id) result = allowed(request, file) if result is not True: return result return func(request, FileViewer(file), *args, **kw)
def setUp(self): self.old_tmp = settings.TMP_PATH settings.TMP_PATH = tempfile.mkdtemp() self.viewer = FileViewer(make_file(1, dictionary))