public void TestParsingString(string value, float expectedTop, float expectedLeft, float expectedBottom, float expectedRight)
        {
            var bindable = new BindableMarginPadding();

            bindable.Parse(value);

            Assert.AreEqual(new MarginPadding {
                Top = expectedTop, Left = expectedLeft, Bottom = expectedBottom, Right = expectedRight
            }, bindable.Value);
        }
        public void TestSet(float top, float left, float bottom, float right)
        {
            var value = new MarginPadding {
                Top = top, Left = left, Bottom = bottom, Right = right
            };

            var bindable = new BindableMarginPadding {
                Value = value
            };

            Assert.AreEqual(value, bindable.Value);
        }
        public void TestParsingStringWithRange(string value,
                                               float minValueTop, float minValueLeft, float minValueBottom, float minValueRight,
                                               float maxValueTop, float maxValueLeft, float maxValueBottom, float maxValueRight,
                                               float expectedTop, float expectedLeft, float expectedBottom, float expectedRight
                                               )
        {
            var minValue = new MarginPadding {
                Top = minValueTop, Left = minValueLeft, Bottom = minValueBottom, Right = minValueRight
            };
            var maxValue = new MarginPadding {
                Top = maxValueTop, Left = maxValueLeft, Bottom = maxValueBottom, Right = maxValueRight
            };
            var expected = new MarginPadding {
                Top = expectedTop, Left = expectedLeft, Bottom = expectedBottom, Right = expectedRight
            };

            var bindable = new BindableMarginPadding {
                MinValue = minValue, MaxValue = maxValue
            };

            bindable.Parse(value);

            Assert.AreEqual(expected, bindable.Value);
        }