< Summary

Class:PlacesCardsConfigurator
Assembly:ExploreV2
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/ExploreV2/Scripts/Sections/PlacesAndEventsSection/PlacesCardsConfigurator.cs
Covered lines:17
Uncovered lines:0
Coverable lines:17
Total lines:51
Line coverage:100% (17 of 17)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Configure(...)0%110100%
ConfigureFromAPIData(...)0%110100%
FormatDescription(...)0%220100%
FormatAuthorName(...)0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/ExploreV2/Scripts/Sections/PlacesAndEventsSection/PlacesCardsConfigurator.cs

#LineLine coverage
 1using System;
 2using System.Linq;
 3using static HotScenesController;
 4using Environment = DCL.Environment;
 5
 6/// <summary>
 7/// Utils related to the places management in ExploreV2.
 8/// </summary>
 9public static class PlacesCardsConfigurator
 10{
 11    private const string NO_PLACE_DESCRIPTION_WRITTEN = "The author hasn't written a description yet.";
 12
 13    /// <summary>
 14    /// Configure a place card with the given model.
 15    /// </summary>
 16    /// <param name="placeCard">Place card to configure.</param>
 17    /// <param name="placeInfo">Model to apply.</param>
 18    /// <param name="OnPlaceInfoClicked">Action to inform when the Info button has been clicked.</param>
 19    /// <param name="OnPlaceJumpInClicked">Action to inform when the JumpIn button has been clicked.</param>
 20    public static PlaceCardComponentView Configure(PlaceCardComponentView placeCard, PlaceCardComponentModel placeInfo, 
 21    {
 4122        placeCard.Configure(placeInfo);
 23
 4124        placeCard.onInfoClick.RemoveAllListeners();
 4125        placeCard.onInfoClick.AddListener(() => OnPlaceInfoClicked?.Invoke(placeInfo));
 4126        placeCard.onJumpInClick.RemoveAllListeners();
 4127        placeCard.onJumpInClick.AddListener(() => OnPlaceJumpInClicked?.Invoke(placeInfo.hotSceneInfo));
 28
 4129        return placeCard;
 30    }
 31
 32    public static PlaceCardComponentModel ConfigureFromAPIData(PlaceCardComponentModel cardModel, HotSceneInfo placeFrom
 33    {
 934        cardModel.placePictureUri = placeFromAPI.thumbnail;
 935        cardModel.placeName = placeFromAPI.name;
 936        cardModel.placeDescription = FormatDescription(placeFromAPI);
 937        cardModel.placeAuthor = FormatAuthorName(placeFromAPI);
 938        cardModel.numberOfUsers = placeFromAPI.usersTotalCount;
 939        cardModel.parcels = placeFromAPI.parcels;
 940        cardModel.coords = placeFromAPI.baseCoords;
 941        cardModel.hotSceneInfo = placeFromAPI;
 42
 943        return cardModel;
 44    }
 45
 46    internal static string FormatDescription(HotSceneInfo placeFromAPI) =>
 1047        string.IsNullOrEmpty(placeFromAPI.description) ? NO_PLACE_DESCRIPTION_WRITTEN : placeFromAPI.description;
 48
 49    internal static string FormatAuthorName(HotSceneInfo placeFromAPI) =>
 1050        $"Author <b>{placeFromAPI.creator}</b>";
 51}