< Summary

Class:SectionsHandler
Assembly:BuilderProjectsPanel
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/DCLPlugins/BuilderInWorld/HUD/ProjectsPanelHUD/Scripts/Handlers/SectionsHandler.cs
Covered lines:0
Uncovered lines:35
Coverable lines:35
Total lines:83
Line coverage:0% (0 of 35)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
SectionsHandler(...)0%2100%
Dispose()0%2100%
OnSectionShow(...)0%30500%
OnSectionHide(...)0%30500%
SelectProject(...)0%2100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/DCLPlugins/BuilderInWorld/HUD/ProjectsPanelHUD/Scripts/Handlers/SectionsHandler.cs

#LineLine coverage
 1using System;
 2using DCL.Builder;
 3
 4internal class SectionsHandler : IDisposable
 5{
 6    private readonly ISectionsController sectionsController;
 7    private readonly IScenesViewController scenesViewController;
 8    private readonly SearchBarView searchBarView;
 9    private readonly ILandsController landsController;
 10    private readonly IProjectsController projectsController;
 11
 012    public SectionsHandler(ISectionsController sectionsController, IScenesViewController scenesViewController, ILandsCon
 13    {
 014        this.sectionsController = sectionsController;
 015        this.scenesViewController = scenesViewController;
 016        this.searchBarView = searchBarView;
 017        this.landsController = landsController;
 018        this.projectsController = projectsController;
 19
 020        sectionsController.OnSectionShow += OnSectionShow;
 021        sectionsController.OnSectionHide += OnSectionHide;
 022        scenesViewController.OnProjectSelected += SelectProject;
 023    }
 24
 25    public void Dispose()
 26    {
 027        sectionsController.OnSectionShow -= OnSectionShow;
 028        sectionsController.OnSectionHide -= OnSectionHide;
 029        scenesViewController.OnProjectSelected -= SelectProject;
 030    }
 31
 32    void OnSectionShow(SectionBase sectionBase)
 33    {
 034        if (sectionBase is ISceneListener deployedSceneListener)
 35        {
 036            scenesViewController.AddListener(deployedSceneListener);
 37        }
 38
 039        if (sectionBase is IProjectsListener projectsListener)
 40        {
 041            projectsController.AddListener(projectsListener);
 42        }
 43
 044        if (sectionBase is ISelectSceneListener selectSceneListener)
 45        {
 046            scenesViewController.AddListener(selectSceneListener);
 47        }
 48
 049        if (sectionBase is ILandsListener landsListener)
 50        {
 051            landsController.AddListener(landsListener);
 52        }
 53
 054        searchBarView.SetSearchBar(sectionBase.searchHandler, sectionBase.searchBarConfig);
 055    }
 56
 57    void OnSectionHide(SectionBase sectionBase)
 58    {
 059        if (sectionBase is ISceneListener deployedSceneListener)
 60        {
 061            scenesViewController.RemoveListener(deployedSceneListener);
 62        }
 63
 064        if (sectionBase is IProjectsListener projectSceneListener)
 65        {
 066            projectsController.RemoveListener(projectSceneListener);
 67        }
 68
 069        if (sectionBase is ISelectSceneListener selectSceneListener)
 70        {
 071            scenesViewController.RemoveListener(selectSceneListener);
 72        }
 73
 074        if (sectionBase is ILandsListener landsListener)
 75        {
 076            landsController.RemoveListener(landsListener);
 77        }
 78
 079        searchBarView.SetSearchBar(null, null);
 080    }
 81
 082    void SelectProject(ISceneCardView sceneCardView) { sectionsController.OpenSection(SectionId.SETTINGS_PROJECT_GENERAL
 83}