Boost js, css, dbschema and non-user json file priority

This commit is contained in:
shortcutme 2017-03-12 17:55:47 +01:00
parent f46f9fa6ea
commit d7496d6fd5
No known key found for this signature in database
GPG Key ID: 5B63BAE6CB9613AE
2 changed files with 12 additions and 9 deletions

View File

@ -35,16 +35,16 @@ class TestSiteDownload:
def boostRequest(inner_path):
# I really want these file
if inner_path == "index.html":
site_temp.needFile("data/img/multiuser.png", priority=9, blocking=False)
site_temp.needFile("data/img/direct_domains.png", priority=10, blocking=False)
site_temp.needFile("data/img/multiuser.png", priority=5, blocking=False)
site_temp.needFile("data/img/direct_domains.png", priority=5, blocking=False)
site_temp.onFileDone.append(boostRequest)
site_temp.download(blind_includes=True).join(timeout=5)
file_requests = [request[2]["inner_path"] for request in requests if request[0] in ("getFile", "streamFile")]
# Test priority
assert file_requests[0:2] == ["content.json", "index.html"] # Must-have files
assert file_requests[2:4] == ["data/img/direct_domains.png", "data/img/multiuser.png"] # Directly requested files
assert file_requests[4:6] == ["css/all.css", "js/all.js"] # Important assets
assert file_requests[6] == "dbschema.json" # Database map
assert file_requests[2:4] == ["css/all.css", "js/all.js"] # Important assets
assert file_requests[4] == "dbschema.json" # Database map
assert file_requests[5:7] == ["data/img/multiuser.png", "data/img/direct_domains.png"] # Directly requested files
assert "-default" in file_requests[-1] # Put default files for cloning to the end
# Check files

View File

@ -384,15 +384,18 @@ class WorkerManager(object):
if "-default" in inner_path:
return -4 # Default files are cloning not important
elif inner_path.endswith(".css"):
return 5 # boost css files priority
return 7 # boost css files priority
elif inner_path.endswith(".js"):
return 4 # boost js files priority
return 6 # boost js files priority
elif inner_path.endswith("dbschema.json"):
return 3 # boost database specification
return 5 # boost database specification
elif inner_path.endswith("content.json"):
return 1 # boost included content.json files priority a bit
elif inner_path.endswith(".json"):
return 2 # boost data json files priority more
if len(inner_path) < 50: # Boost non-user json files more
return 4
else:
return 2
return 0
# Create new task and return asyncresult