< Summary

Class:Tests.BuildModeHUDControllers.PublishBtnControllerShould
Assembly:BuildModeHUDTests
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/BuildModeHUD/Tests/PublishBtnControllerShould.cs
Covered lines:25
Uncovered lines:0
Coverable lines:25
Total lines:88
Line coverage:100% (25 of 25)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
SetUp()0%110100%
TearDown()0%110100%
ClickCorrectly()0%110100%
ShowTooltipCorrectly()0%110100%
HideTooltipCorrectly()0%110100%
ShowTooltipFeedbackCorrectly()0%110100%
SetInteractableCorrectly(...)0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/BuildModeHUD/Tests/PublishBtnControllerShould.cs

#LineLine coverage
 1using NSubstitute;
 2using NUnit.Framework;
 3using UnityEngine.EventSystems;
 4
 5namespace Tests.BuildModeHUDControllers
 6{
 7    public class PublishBtnControllerShould
 8    {
 9        private PublishBtnController publishBtnController;
 10
 11        [SetUp]
 12        public void SetUp()
 13        {
 614            publishBtnController = new PublishBtnController();
 615            publishBtnController.Initialize(
 16                Substitute.For<IPublishBtnView>(),
 17                Substitute.For<ITooltipController>(),
 18                Substitute.For<ITooltipController>());
 619        }
 20
 21        [TearDown]
 1222        public void TearDown() { publishBtnController.Dispose(); }
 23
 24        [Test]
 25        public void ClickCorrectly()
 26        {
 27            // Arrange
 128            bool clicked = false;
 329            publishBtnController.OnClick += () => { clicked = true; };
 30
 31            // Act
 132            publishBtnController.Click();
 33
 34            // Assert
 135            Assert.IsTrue(clicked, "clicked is false!");
 136        }
 37
 38        [Test]
 39        public void ShowTooltipCorrectly()
 40        {
 41            // Arrange
 142            BaseEventData testEventData = new BaseEventData(null);
 143            string testText = "Test text";
 44
 45            // Act
 146            publishBtnController.ShowTooltip(testEventData, testText);
 47
 48            // Assert
 149            publishBtnController.tooltipController.Received(1).ShowTooltip(testEventData);
 150            publishBtnController.tooltipController.Received(1).SetTooltipText(testText);
 151        }
 52
 53        [Test]
 54        public void HideTooltipCorrectly()
 55        {
 56            // Act
 157            publishBtnController.HideTooltip();
 58
 59            // Assert
 160            publishBtnController.tooltipController.Received(1).HideTooltip();
 161        }
 62
 63        [Test]
 64        public void ShowTooltipFeedbackCorrectly()
 65        {
 66            // Arrange
 167            string testText = "Test text";
 68
 69            // Act
 170            publishBtnController.SetFeedbackMessage(testText);
 71
 72            // Assert
 173            Assert.AreEqual(testText, publishBtnController.currentFeedbackmessage);
 174        }
 75
 76        [Test]
 77        [TestCase(true)]
 78        [TestCase(false)]
 79        public void SetInteractableCorrectly(bool isInteractable)
 80        {
 81            // Act
 282            publishBtnController.SetInteractable(isInteractable);
 83
 84            // Assert
 285            publishBtnController.publishBtnView.Received(1).SetInteractable(isInteractable);
 286        }
 87    }
 88}