Example #1
0
        public async Task Capture_Span_When_Upload_Block_Blob_With_Unseekable_Stream()
        {
            await using var scope = await BlobContainerScope.CreateContainer(Environment.StorageAccountConnectionString);

            var blobName = Guid.NewGuid().ToString();
            var client   = new BlockBlobClient(Environment.StorageAccountConnectionString, scope.ContainerName, blobName);

            await Agent.Tracer.CaptureTransaction("Upload Azure Block Blob", ApiConstants.TypeStorage, async() =>
            {
                var stream             = new UnSeekableStream(Encoding.UTF8.GetBytes("block blob"));
                var blobUploadResponse = await client.UploadAsync(stream);
            });

            AssertSpan("Upload", $"{scope.ContainerName}/{blobName}", count: 3);
        }
Example #2
0
        public void AddFile_Passes_Seekable_Stream_To_Provider()
        {
            //Arrange
            _folderInfo.Setup(fi => fi.PortalID).Returns(Constants.CONTENT_ValidPortalId);
            _folderInfo.Setup(fi => fi.FolderID).Returns(Constants.FOLDER_ValidFolderId);
            _folderInfo.Setup(fi => fi.PhysicalPath).Returns(Constants.FOLDER_ValidFolderPath);
            _folderInfo.Setup(fi => fi.FolderMappingID).Returns(Constants.FOLDER_ValidFolderMappingID);

            var fileContent = new UnSeekableStream();

            _portalController.Setup(pc => pc.HasSpaceAvailable(It.IsAny<int>(), It.IsAny<long>())).Returns(true);

            _globals.Setup(g => g.GetSubFolderPath(Constants.FOLDER_ValidFilePath, Constants.CONTENT_ValidPortalId)).Returns(Constants.FOLDER_ValidFolderRelativePath);

            var folderMapping = new FolderMappingInfo { FolderProviderType = Constants.FOLDER_ValidFolderProviderType };

            _folderMappingController.Setup(fmc => fmc.GetFolderMapping(Constants.FOLDER_ValidFolderMappingID)).Returns(folderMapping);

            _mockFolder.Setup(mf => mf.FileExists(_folderInfo.Object, Constants.FOLDER_ValidFileName)).Returns(false);
            _mockFolder.Setup(mf => mf.AddFile(_folderInfo.Object, Constants.FOLDER_ValidFileName, fileContent)).Verifiable();

            _mockFileManager.Setup(mfm => mfm.IsAllowedExtension(Constants.FOLDER_ValidFileName)).Returns(true);

            //Act
            _mockFileManager.Object.AddFile(_folderInfo.Object, Constants.FOLDER_ValidFileName, fileContent, true, false, Constants.CONTENTTYPE_ValidContentType);

            //Assert
            _mockFolder.Verify(x => x.AddFile(_folderInfo.Object, Constants.FOLDER_ValidFileName, It.Is<Stream>(y => y != fileContent)));
        }