public void TestUnbindOnDrawableDoNotDisposeDelegatingProperty()
        {
            var bindable = new Bindable <int>();

            bool valueChanged = false;

            bindable.ValueChanged += _ => valueChanged = true;

            var drawable = new TestDrawable2 {
                GetBindable = () => bindable
            };

            drawable.SetValue(1);
            Assert.IsTrue(valueChanged, "bound correctly");

            drawable.Dispose();

            valueChanged   = false;
            bindable.Value = 2;
            Assert.IsTrue(valueChanged, "bound correctly");

            valueChanged = false;
            drawable.SetValue(3);
            Assert.IsTrue(valueChanged, "bound correctly");
        }
        public void TestUnbindOnDrawableDisposePropertyCached()
        {
            // Build cache
            var drawable = new TestDrawable2();

            drawable.Dispose();

            TestUnbindOnDrawableDispose();
        }