< Summary

Class:DCLServices.Lambdas.NamesService.NamesService
Assembly:NamesService
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/DCLServices/Lambdas/NamesService/NamesService.cs
Covered lines:3
Uncovered lines:15
Coverable lines:18
Total lines:59
Line coverage:16.6% (3 of 18)
Covered branches:0
Total branches:0
Covered methods:3
Total methods:5
Method coverage:60% (3 of 5)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
NamesService()0%110100%
RequestOwnedNamesAsync()0%56700%
DCLServices.Lambdas.ILambdaServiceConsumer<DCLServices.Lambdas.NamesService.NamesResponse>.CreateRequest(...)0%2100%
Initialize()0%110100%
Dispose()0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/DCLServices/Lambdas/NamesService/NamesService.cs

#LineLine coverage
 1using Cysharp.Threading.Tasks;
 2using DCL;
 3using System;
 4using System.Collections.Generic;
 5using System.Threading;
 6
 7namespace DCLServices.Lambdas.NamesService
 8{
 9    public class NamesService : INamesService, ILambdaServiceConsumer<NamesResponse>
 10    {
 11        internal const string END_POINT = "users/";
 12        internal const int TIMEOUT = ILambdasService.DEFAULT_TIMEOUT;
 13        internal const int ATTEMPTS_NUMBER = ILambdasService.DEFAULT_ATTEMPTS_NUMBER;
 14
 15        private Service<ILambdasService> lambdasService;
 42516        private readonly Dictionary<(string userId, int pageSize), LambdaResponsePagePointer<NamesResponse>> ownerNamesP
 17
 18        public async UniTask<(IReadOnlyList<NamesResponse.NameEntry> names, int totalAmount)> RequestOwnedNamesAsync(str
 19        {
 020            var createNewPointer = false;
 021            if (!ownerNamesPagePointers.TryGetValue((userId, pageSize), out var pagePointer))
 22            {
 023                createNewPointer = true;
 24            }
 025            else if (cleanCachedPages)
 26            {
 027                pagePointer.Dispose();
 028                ownerNamesPagePointers.Remove((userId, pageSize));
 029                createNewPointer = true;
 30            }
 31
 032            if (createNewPointer)
 33            {
 034                ownerNamesPagePointers[(userId, pageSize)] = pagePointer = new LambdaResponsePagePointer<NamesResponse>(
 35                    $"{END_POINT}{userId}/names", pageSize, ct, this);
 36            }
 37
 038            var pageResponse = await pagePointer.GetPageAsync(pageNumber, ct);
 39
 040            if (!pageResponse.success)
 041                throw new Exception($"The request of the owned names for '{userId}' failed!");
 42
 043            return (pageResponse.response.Elements, pageResponse.response.TotalAmount);
 044        }
 45
 46        UniTask<(NamesResponse response, bool success)> ILambdaServiceConsumer<NamesResponse>.CreateRequest(string endPo
 047            lambdasService.Ref.Get<NamesResponse>(
 48                END_POINT,
 49                endPoint,
 50                TIMEOUT,
 51                ATTEMPTS_NUMBER,
 52                cancellationToken,
 53                LambdaPaginatedResponseHelper.GetPageSizeParam(pageSize), LambdaPaginatedResponseHelper.GetPageNumParam(
 54
 42555        public void Initialize() { }
 56
 42557        public void Dispose() { }
 58    }
 59}