< Summary

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

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
SetUp()0%110100%
TearDown()0%110100%
SetActiveCorrectly(...)0%110100%
CancelCorrectly()0%110100%
PublishCorrectly(...)0%220100%
ValidatePublicationInfoCorrectly(...)0%110100%
SetDefaultPublicationInfoCorrectly()0%110100%
SetCustomPublicationInfoCorrectly()0%110100%
GetSceneNameCorrectly()0%110100%
GetSceneDescriptionCorrectly()0%110100%
GetSceneScreenshotTextureCorrectly()0%110100%

File(s)

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

#LineLine coverage
 1using NSubstitute;
 2using NUnit.Framework;
 3
 4namespace Tests.BuildModeHUDControllers
 5{
 6    public class PublicationDetailsControllerShould
 7    {
 8        private PublicationDetailsController publicationDetailsController;
 9
 10        [SetUp]
 11        public void SetUp()
 12        {
 1213            publicationDetailsController = new PublicationDetailsController();
 1214            publicationDetailsController.Initialize(Substitute.For<IPublicationDetailsView>());
 1215        }
 16
 17        [TearDown]
 2418        public void TearDown() { publicationDetailsController.Dispose(); }
 19
 20        [Test]
 21        [TestCase(true)]
 22        [TestCase(false)]
 23        public void SetActiveCorrectly(bool isActive)
 24        {
 25            // Act
 226            publicationDetailsController.SetActive(isActive);
 27
 28            // Assert
 229            publicationDetailsController.publicationDetailsView.Received(1).SetActive(isActive);
 230        }
 31
 32        [Test]
 33        public void CancelCorrectly()
 34        {
 35            // Arrange
 136            bool isCancelClicked = false;
 237            publicationDetailsController.OnCancel += () => isCancelClicked = true;
 38
 39            // Act
 140            publicationDetailsController.Cancel();
 41
 42            // Assert
 143            publicationDetailsController.publicationDetailsView.Received(1).SetActive(false);
 144            Assert.IsTrue(isCancelClicked, "isCancelClicked is false!");
 145        }
 46
 47        [Test]
 48        [TestCase(true)]
 49        [TestCase(false)]
 50        public void PublishCorrectly(bool isValidated)
 51        {
 52            // Arrange
 253            string testName = "Test name";
 254            string testDesc = "Test desc";
 255            publicationDetailsController.isValidated = isValidated;
 56
 257            bool isPublishClicked = false;
 358            publicationDetailsController.OnConfirm += () => isPublishClicked = true;
 59
 60            // Act
 261            publicationDetailsController.Publish(testName, testDesc);
 62
 63            // Assert
 264            if (isValidated)
 65            {
 166                publicationDetailsController.publicationDetailsView.Received(1).SetActive(false);
 167                Assert.IsTrue(isPublishClicked, "isPublishClicked is false!");
 68            }
 269        }
 70
 71        [Test]
 72        [TestCase("")]
 73        [TestCase("Test name")]
 74        public void ValidatePublicationInfoCorrectly(string sceneName)
 75        {
 76            // Arrange
 277            publicationDetailsController.isValidated = sceneName.Length == 0;
 78
 79            // Act
 280            publicationDetailsController.ValidatePublicationInfo(sceneName);
 81
 82            // Assert
 283            Assert.AreEqual(sceneName.Length > 0, publicationDetailsController.isValidated, "isValidated does not match!
 284            publicationDetailsController.publicationDetailsView.Received().SetSceneNameValidationActive(!publicationDeta
 285            publicationDetailsController.publicationDetailsView.Received().SetPublishButtonActive(publicationDetailsCont
 286        }
 87
 88        [Test]
 89        public void SetDefaultPublicationInfoCorrectly()
 90        {
 91            // Act
 192            publicationDetailsController.SetDefaultPublicationInfo();
 93
 94            // Assert
 195            publicationDetailsController.publicationDetailsView.Received().SetSceneName(PublicationDetailsController.DEF
 196            publicationDetailsController.publicationDetailsView.Received().SetSceneDescription(PublicationDetailsControl
 197        }
 98
 99        [Test]
 100        public void SetCustomPublicationInfoCorrectly()
 101        {
 102            // Arrange
 1103            string testName = "Test name";
 1104            string testDesc = "Test desc";
 105
 106            // Act
 1107            publicationDetailsController.SetCustomPublicationInfo(testName, testDesc);
 108
 109            // Assert
 1110            publicationDetailsController.publicationDetailsView.Received().SetSceneName(testName);
 1111            publicationDetailsController.publicationDetailsView.Received().SetSceneDescription(testDesc);
 1112        }
 113
 114        [Test]
 115        public void GetSceneNameCorrectly()
 116        {
 117            // Act
 1118            publicationDetailsController.GetSceneName();
 119
 120            // Assert
 1121            publicationDetailsController.publicationDetailsView.Received().GetSceneName();
 1122        }
 123
 124        [Test]
 125        public void GetSceneDescriptionCorrectly()
 126        {
 127            // Act
 1128            publicationDetailsController.GetSceneDescription();
 129
 130            // Assert
 1131            publicationDetailsController.publicationDetailsView.Received().GetSceneDescription();
 1132        }
 133
 134        [Test]
 135        public void GetSceneScreenshotTextureCorrectly()
 136        {
 137            // Act
 1138            publicationDetailsController.GetSceneScreenshotTexture();
 139
 140            // Assert
 1141            publicationDetailsController.publicationDetailsView.Received().GetSceneScreenshotTexture();
 1142        }
 143    }
 144}