< Summary

Class:ProfileHUDTests
Assembly:ProfileHUDTests
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/ProfileHUD/Tests/ProfileHUDTests.cs
Covered lines:83
Uncovered lines:0
Coverable lines:83
Total lines:175
Line coverage:100% (83 of 83)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
SetUp()0%330100%
TearDown()0%330100%
Creation()0%110100%
VisibilityDefaulted()0%110100%
VisibilityOverridenTrue()0%110100%
VisibilityOverridenFalse()0%110100%
ContentVisibilityOnToggle()0%110100%
UpdateProfileCorrectly()0%330100%
SetManaBalanceCorrectly()0%110100%
AddBackpackWindowCorrectly()0%110100%
ShowAndHideBackpackButtonCorrectly()0%110100%
ActivateAndDeactivateProfileNameEditionCorrectly()0%110100%
UpdateCharactersLimitLabelCorrectly()0%110100%
SetProfileNameCorrectly()0%110100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/Scripts/MainScripts/DCL/Controllers/HUD/ProfileHUD/Tests/ProfileHUDTests.cs

#LineLine coverage
 1using NUnit.Framework;
 2using System;
 3using System.Collections;
 4using UnityEngine.TestTools;
 5
 6public class ProfileHUDTests : IntegrationTestSuite_Legacy
 7{
 128    protected override bool justSceneSetUp => true;
 9    ProfileHUDController controller;
 10
 11    [UnitySetUp]
 12    protected override IEnumerator SetUp()
 13    {
 1214        yield return base.SetUp();
 1215        controller = new ProfileHUDController();
 1216    }
 17
 18    [UnityTearDown]
 19    protected override IEnumerator TearDown()
 20    {
 1221        controller.Dispose();
 1222        yield return base.TearDown();
 1223    }
 24
 25    [Test]
 26    public void Creation()
 27    {
 128        Assert.NotNull(controller.view);
 129        Assert.NotNull(controller.view.manaCounterView);
 130    }
 31
 32    [Test]
 33    public void VisibilityDefaulted()
 34    {
 135        Assert.IsTrue(controller.view.gameObject.activeInHierarchy);
 136        Assert.IsFalse(controller.view.menuShowHideAnimator.isVisible);
 137        Assert.IsFalse(controller.view.manaCounterView.gameObject.activeInHierarchy);
 138    }
 39
 40    [Test]
 41    public void VisibilityOverridenTrue()
 42    {
 143        controller.SetVisibility(true);
 144        Assert.IsTrue(controller.view.gameObject.activeInHierarchy);
 145        Assert.IsFalse(controller.view.menuShowHideAnimator.isVisible);
 146    }
 47
 48    [Test]
 49    public void VisibilityOverridenFalse()
 50    {
 151        controller.SetVisibility(false);
 152        Assert.IsFalse(controller.view.menuShowHideAnimator.isVisible);
 153    }
 54
 55    [Test]
 56    public void ContentVisibilityOnToggle()
 57    {
 158        Assert.AreEqual(false, controller.view.menuShowHideAnimator.isVisible);
 159        controller.view.ToggleMenu();
 160        Assert.AreEqual(true, controller.view.menuShowHideAnimator.isVisible);
 161        controller.view.ToggleMenu();
 162        Assert.AreEqual(false, controller.view.menuShowHideAnimator.isVisible);
 163    }
 64
 65    [Test]
 66    public void UpdateProfileCorrectly()
 67    {
 68        const string address = "0x12345678901234567890";
 69        const string addressEnd = "7890";
 70        const string addressFormatted = "0x1234...567890";
 71        const string testUserName = "PraBian";
 72
 173        UserProfileModel profileModel = new UserProfileModel()
 74        {
 75            name = testUserName,
 76            userId = address,
 77            hasClaimedName = true
 78        };
 179        UserProfile profile = UserProfile.GetOwnUserProfile();
 180        profile.UpdateData(profileModel, false);
 81
 882        for (int i = 0; i < controller.view.hideOnNameClaimed.Length; i++)
 83        {
 384            Assert.AreEqual(false, controller.view.hideOnNameClaimed[i].gameObject.activeSelf);
 85        }
 186        Assert.AreEqual(profileModel.name, controller.view.textName.text);
 87
 188        profileModel.name += "#1234";
 189        profileModel.hasClaimedName = false;
 190        profile.UpdateData(profileModel, true);
 91
 892        for (int i = 0; i < controller.view.hideOnNameClaimed.Length; i++)
 93        {
 394            Assert.AreEqual(true, controller.view.hideOnNameClaimed[i].gameObject.activeSelf);
 95        }
 196        Assert.AreEqual(testUserName, controller.view.textName.text);
 197        Assert.AreEqual($"#{addressEnd}", controller.view.textPostfix.text);
 198        Assert.AreEqual(addressFormatted, controller.view.textAddress.text);
 99
 1100    }
 101
 102    [Test]
 103    public void SetManaBalanceCorrectly()
 104    {
 1105        string balance = "5";
 106
 1107        controller.SetManaBalance(balance);
 1108        Assert.AreEqual(Convert.ToDouble(balance), Convert.ToDouble(controller.view.manaCounterView.balanceText.text));
 1109    }
 110
 111    [Test]
 112    public void AddBackpackWindowCorrectly()
 113    {
 1114        Assert.IsNull(controller.avatarEditorHud);
 1115        Assert.IsFalse(controller.view.buttonBackpack.gameObject.activeSelf);
 116
 1117        AvatarEditorHUDController testAvatarEditor = new AvatarEditorHUDController();
 1118        controller.AddBackpackWindow(testAvatarEditor);
 119
 1120        Assert.IsNotNull(controller.avatarEditorHud);
 1121        Assert.IsTrue(controller.view.buttonBackpack.gameObject.activeSelf);
 1122    }
 123
 124    [Test]
 125    public void ShowAndHideBackpackButtonCorrectly()
 126    {
 1127        AvatarEditorHUDController testAvatarEditor = new AvatarEditorHUDController();
 1128        controller.AddBackpackWindow(testAvatarEditor);
 129
 1130        controller.SetBackpackButtonVisibility(true);
 1131        Assert.IsTrue(controller.view.buttonBackpack.gameObject.activeSelf);
 132
 1133        controller.SetBackpackButtonVisibility(false);
 1134        Assert.IsFalse(controller.view.buttonBackpack.gameObject.activeSelf);
 1135    }
 136
 137    [Test]
 138    public void ActivateAndDeactivateProfileNameEditionCorrectly()
 139    {
 1140        controller.view.textName.text = "test name";
 141
 1142        controller.view.ActivateProfileNameEditionMode(true);
 1143        Assert.IsFalse(controller.view.editNameTooltipGO.activeSelf);
 1144        Assert.IsFalse(controller.view.textName.gameObject.activeSelf);
 1145        Assert.IsTrue(controller.view.inputName.gameObject.activeSelf);
 1146        Assert.IsTrue(controller.view.inputName.text == controller.view.textName.text);
 147
 1148        controller.view.ActivateProfileNameEditionMode(false);
 1149        Assert.IsTrue(controller.view.editNameTooltipGO.activeSelf);
 1150        Assert.IsTrue(controller.view.textName.gameObject.activeSelf);
 1151        Assert.IsFalse(controller.view.inputName.gameObject.activeSelf);
 1152    }
 153
 154    [Test]
 155    public void UpdateCharactersLimitLabelCorrectly()
 156    {
 1157        controller.view.inputName.characterLimit = 100;
 1158        controller.view.inputName.text = "";
 1159        Assert.IsTrue(controller.view.textCharLimit.text == $"{controller.view.inputName.text.Length}/{controller.view.i
 160
 1161        controller.view.inputName.characterLimit = 50;
 1162        controller.view.inputName.text = "test name";
 1163        Assert.IsTrue(controller.view.textCharLimit.text == $"{controller.view.inputName.text.Length}/{controller.view.i
 1164    }
 165
 166    [Test]
 167    public void SetProfileNameCorrectly()
 168    {
 1169        string newName = "new test name";
 170
 1171        controller.view.textName.text = "test name";
 1172        controller.view.SetProfileName(newName);
 1173        Assert.IsTrue(controller.view.textName.text == newName);
 1174    }
 175}