Merge "Fix for swift ui displaying infinite folders"

This commit is contained in:
Jenkins 2016-10-06 13:35:40 +00:00 committed by Gerrit Code Review
commit 4304bf3fce
3 changed files with 6 additions and 3 deletions

View File

@ -17,6 +17,7 @@ import os
from django import forms
from django.http import StreamingHttpResponse
from django.utils.http import urlunquote
from django.views.decorators.csrf import csrf_exempt
from django.views import generic
import six
@ -120,6 +121,8 @@ class Objects(generic.View):
:return:
"""
path = request.GET.get('path')
if path is not None:
path = urlunquote(path)
objects = api.swift.swift_get_objects(
request,

View File

@ -121,7 +121,7 @@
delimiter: model.DELIMETER
};
if (folder) {
spec.path = folder + model.DELIMETER;
spec.path = encodeURIComponent(folder) + model.DELIMETER;
}
return swiftAPI.getObjects(name, spec).then(function onObjects(response) {
@ -279,7 +279,7 @@
state.counted.folders++;
var spec = {
delimiter: model.DELIMETER,
path: item.path + model.DELIMETER
path: encodeURIComponent(item.path).replace(/%2F/g, '/')
};
return swiftAPI.getObjects(model.container.name, spec)
.then(function objects(response) {

View File

@ -244,7 +244,7 @@
beforeEach(function before() {
spyOn(swiftAPI, 'getObjects').and.callFake(function fake(container, spec) {
var deferred = $q.defer();
var items = fakeSwift[spec.path];
var items = fakeSwift[spec.path + '/'];
expect(items).toBeDefined(); // sanity check
deferred.resolve({data: {items: items}});
return deferred.promise;