import uuid
from rest_framework import status
-from django.http import FileResponse, StreamingHttpResponse
+from django.http import StreamingHttpResponse
from catalog.pub.config.config import CATALOG_ROOT_PATH
from catalog.pub.database.models import VnfPackageModel
from catalog.pub.exceptions import CatalogException
f.seek(start, 0)
fs = f.read(end - start + 1)
response = StreamingHttpResponse(fs, status=status.HTTP_200_OK)
- response['Content-Type'] = 'application/octet-stream'
response['Content-Range'] = file_range
else:
- response = FileResponse(open(file_path, 'rb'), status=status.HTTP_200_OK)
+ response = StreamingHttpResponse(open(file_path, 'rb'), status=status.HTTP_200_OK)
+ response['Content-Type'] = 'application/octet-stream'
response['Content-Disposition'] = 'attachment; filename=%s' % file_name.encode('utf-8')
return response
self.assertEqual(response.data, None)
def test_fetch_vnf_pkg(self):
- pass
+ with open("vnfPackage.csar", "wb") as fp:
+ fp.writelines("AAAABBBBCCCCDDDD")
+ VnfPackageModel.objects.create(
+ vnfPackageId="222",
+ onboardingState="ONBOARDED",
+ localFilePath="vnfPackage.csar"
+ )
+ response = self.client.get("/api/vnfpkgm/v1/vnf_packages/222/package_content")
+ partial_file_content = ''
+ for data in response.streaming_content:
+ partial_file_content = partial_file_content + data
+ self.assertEqual(response.status_code, status.HTTP_200_OK)
+ self.assertEqual('AAAABBBBCCCCDDDD', partial_file_content)
+ os.remove("vnfPackage.csar")
def test_fetch_partical_vnf_pkg(self):
with open("vnfPackage.csar", "wb") as fp: