public void ShouldThrowExceptionWhenWidthIsNotSet()
            {
                var richMenuBounds = new RichMenuBounds();

                ExceptionAssert.Throws <InvalidOperationException>("The width is not set.", () =>
                {
                    RichMenuBounds.Convert(richMenuBounds);
                });
            }
            public void ShouldConvertCustomIRichMenuBoundsToRichMenuBounds()
            {
                var richMenuBounds = new TestRichMenuBounds();

                var bounds = RichMenuBounds.Convert(richMenuBounds);

                Assert.AreNotSame(bounds, richMenuBounds);
                Assert.AreEqual(1, bounds.X);
                Assert.AreEqual(2, bounds.Y);
                Assert.AreEqual(3, bounds.Width);
                Assert.AreEqual(4, bounds.Height);
            }
            public void ShouldPreserveInstanceWhenValueIsRichMenuBounds()
            {
                var richMenuBounds = new RichMenuBounds()
                {
                    Width  = 1,
                    Height = 1
                };

                var convertedRichMenuBounds = RichMenuBounds.Convert(richMenuBounds);

                Assert.AreSame(richMenuBounds, convertedRichMenuBounds);
            }