< Summary - Syki

Information
Class: Syki.Back.Storage.AzureBlobStorageService
Assembly: Back
File(s): /home/runner/work/syki/syki/Back/Storage/AzureBlobStorageService.cs
Tag: 4_16869239191
Line coverage
0%
Covered lines: 0
Uncovered lines: 13
Coverable lines: 13
Total lines: 25
Line coverage: 0%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%210%
CreatePreSignedUrlForUpload()100%210%

File(s)

/home/runner/work/syki/syki/Back/Storage/AzureBlobStorageService.cs

#LineLine coverage
 1using Azure.Storage.Sas;
 2using Azure.Storage.Blobs;
 3
 4namespace Syki.Back.Storage;
 5
 06public class AzureBlobStorageService(AzureBlobStorageSettings settings) : IStorageService
 7{
 8    public async Task<string> CreatePreSignedUrlForUpload(StorageContainer container, string path)
 9    {
 010        var blobContainer = new BlobContainerClient(settings.ConnectionString, container.GetDescription());
 011        var blob = blobContainer.GetBlobClient(path);
 12
 013        var permissions = BlobSasPermissions.Write | BlobSasPermissions.Create;
 014        var sasBuilder = new BlobSasBuilder(permissions, DateTimeOffset.UtcNow.AddMinutes(5))
 015        {
 016            Resource = "b",
 017            BlobName = blob.Name,
 018            BlobContainerName = blobContainer.Name,
 019        };
 20
 021        Uri uri = blob.GenerateSasUri(sasBuilder);
 22
 023        return await Task.FromResult(uri.ToString());
 024    }
 25}