Esempio n. 1
0
        public void CustomInspector_GettingContext_ReturnsCorrectInstance()
        {
            var value = new Types.ContextTracker();

            Element.SetTarget(value);
            Assert.That(Element.GetContext <Types.ContextA>(), Is.Null);
            var contextA = new Types.ContextA();

            Element.AddContext(contextA);
            Assert.That(Element.GetContext <Types.ContextA>(), Is.Not.Null);
            Assert.That(Element.GetContext <Types.ContextA>().Name, Is.EqualTo("A"));

            Assert.That(Element.GetContext <Types.ContextB>(), Is.Null);
            var contextB = new Types.ContextB();

            Element.AddContext(contextB);
            Assert.That(Element.GetContext <Types.ContextB>(), Is.Not.Null);
            Assert.That(Element.GetContext <Types.ContextB>().Name, Is.EqualTo("B"));

            Element.RemoveContext(contextA);
            Assert.That(Element.GetContext <Types.ContextA>(), Is.Null);

            Element.RemoveContext(contextB);
            Assert.That(Element.GetContext <Types.ContextB>(), Is.Null);
        }
Esempio n. 2
0
        public void CustomInspector_AddingOrRemovingContext_RebuildsTheInspector()
        {
            var value = new Types.ContextTracker();

            Element.SetTarget(value);
            Assert.That(value.HasA, Is.False);
            Assert.That(value.HasB, Is.False);

            var contextA = new Types.ContextA();

            Element.AddContext(contextA);
            Assert.That(value.HasA, Is.True);
            Assert.That(value.HasB, Is.False);

            var contextB = new Types.ContextB();

            Element.AddContext(contextB);
            Assert.That(value.HasA, Is.True);
            Assert.That(value.HasB, Is.True);

            Element.RemoveContext(contextA);
            Assert.That(value.HasA, Is.False);
            Assert.That(value.HasB, Is.True);

            Element.RemoveContext(contextB);
            Assert.That(value.HasA, Is.False);
            Assert.That(value.HasB, Is.False);
        }