< Summary

Class:DCL.Tutorial.TutorialStep_BasicControls
Assembly:Onboarding
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Tutorial/Scripts/Steps/Initial/TutorialStep_BasicControls.cs
Covered lines:17
Uncovered lines:2
Coverable lines:19
Total lines:54
Line coverage:89.4% (17 of 19)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
OnStepStart()0%6.056088.89%
OnStepExecute()0%330100%
OnStepFinished()0%550100%
OnOkButtonClick()0%2100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Tutorial/Scripts/Steps/Initial/TutorialStep_BasicControls.cs

#LineLine coverage
 1using System.Collections;
 2using UnityEngine;
 3using UnityEngine.UI;
 4
 5namespace DCL.Tutorial
 6{
 7    /// <summary>
 8    /// Class that represents the onboarding tutorial step related to the very basic controls.
 9    /// </summary>
 10    public class TutorialStep_BasicControls : TutorialStep
 11    {
 12        private const int TEACHER_CANVAS_SORT_ORDER_START = 4;
 13
 14        [SerializeField] AudioEvent audioEventSuccess;
 15        [SerializeField] Button okButton;
 16
 17        internal bool stepIsFinished = false;
 18        private int defaultTeacherCanvasSortOrder;
 19
 20        public override void OnStepStart()
 21        {
 122            base.OnStepStart();
 23
 124            CommonScriptableObjects.featureKeyTriggersBlocked.Set(true);
 25
 126            okButton.onClick.AddListener(OnOkButtonClick);
 27
 128            if (tutorialController.configuration.teacherCanvas != null)
 129                defaultTeacherCanvasSortOrder = tutorialController.configuration.teacherCanvas.sortingOrder;
 30
 131            tutorialController.SetTeacherCanvasSortingOrder(TEACHER_CANVAS_SORT_ORDER_START);
 32
 133            tutorialController.hudController?.taskbarHud?.SetVisibility(false);
 134            tutorialController.hudController?.profileHud?.SetBackpackButtonVisibility(false);
 035        }
 36
 37        public override IEnumerator OnStepExecute()
 38        {
 439            yield return new WaitUntil(() => stepIsFinished);
 140            audioEventSuccess.Play(true);
 141        }
 42
 43        public override void OnStepFinished()
 44        {
 145            base.OnStepFinished();
 146            tutorialController.SetTeacherCanvasSortingOrder(defaultTeacherCanvasSortOrder);
 147            tutorialController.hudController?.taskbarHud?.SetVisibility(true);
 148            tutorialController.hudController?.profileHud?.SetBackpackButtonVisibility(true);
 149            CommonScriptableObjects.featureKeyTriggersBlocked.Set(false);
 150        }
 51
 052        internal void OnOkButtonClick() { stepIsFinished = true; }
 53    }
 54}