public void IsVisible_Get_ReturnsActiveSelf()
        {
            GameObject go = new GameObject();
            ActivationVisibilityManager visibilityManager = go.AddComponent <ActivationVisibilityManager>();

            go.SetActive(false);
            Assert.IsFalse(visibilityManager.IsVisible);

            go.SetActive(true);
            Assert.IsTrue(visibilityManager.IsVisible);
        }
        public void IsVisible_SetFalse_DeactivatesGameObject()
        {
            GameObject go = new GameObject();
            ActivationVisibilityManager visibilityManager = go.AddComponent <ActivationVisibilityManager>();

            go.SetActive(true);

            visibilityManager.IsVisible = false;

            Assert.IsFalse(go.activeSelf);
        }
        public void IsVisible_GetParentDeactivated_ReturnsActiveSelf()
        {
            GameObject go = new GameObject();
            ActivationVisibilityManager visibilityManager = go.AddComponent <ActivationVisibilityManager>();

            GameObject parent = new GameObject("Parent");

            go.transform.parent = parent.transform;

            parent.SetActive(false);

            Assert.IsTrue(visibilityManager.IsVisible);
        }