public void Convert_CustomIImageMapMessage_ConvertedToTextMessage() { TestImagemapMessage message = new TestImagemapMessage(); ISendMessage[] messages = MessageConverter.Convert(new ISendMessage[] { message }); Assert.AreEqual(1, messages.Length); Assert.AreNotEqual(message, messages[0]); ImagemapMessage imagemapMessage = messages[0] as ImagemapMessage; Assert.AreEqual(new Uri("https://foo.url"), imagemapMessage.BaseUrl); Assert.AreEqual(1040, imagemapMessage.BaseSize.Width); Assert.AreEqual(520, imagemapMessage.BaseSize.Height); Assert.AreEqual("Alternative", imagemapMessage.AlternativeText); IImagemapAction[] actions = imagemapMessage.Actions.ToArray(); ImagemapUriAction uriAction = actions[0] as ImagemapUriAction; Assert.AreEqual(new Uri("https://foo.bar"), uriAction.Url); Assert.AreEqual(4, uriAction.Area.X); Assert.AreEqual(3, uriAction.Area.Y); Assert.AreEqual(2, uriAction.Area.Width); Assert.AreEqual(1, uriAction.Area.Height); ImagemapMessageAction messageAction = actions[1] as ImagemapMessageAction; Assert.AreEqual("TestImagemapMessageAction", messageAction.Text); Assert.AreEqual(4, messageAction.Area.X); Assert.AreEqual(3, messageAction.Area.Y); Assert.AreEqual(2, messageAction.Area.Width); Assert.AreEqual(1, messageAction.Area.Height); }
public void ShouldConvertCustomIImagemapMessageToImagemapMessage() { var message = new TestImagemapMessage(); var imagemapMessage = ImagemapMessage.Convert(message); Assert.AreNotEqual(message, imagemapMessage); Assert.AreEqual(new Uri("https://foo.url"), imagemapMessage.BaseUrl); Assert.AreEqual(1040, imagemapMessage.BaseSize.Width); Assert.AreEqual(520, imagemapMessage.BaseSize.Height); Assert.AreEqual("Alternative", imagemapMessage.AlternativeText); var actions = imagemapMessage.Actions.ToArray(); var uriAction = actions[0] as ImagemapUriAction; Assert.AreEqual(new Uri("https://foo.bar"), uriAction.Url); Assert.AreEqual(4, uriAction.Area.X); Assert.AreEqual(3, uriAction.Area.Y); Assert.AreEqual(2, uriAction.Area.Width); Assert.AreEqual(1, uriAction.Area.Height); var messageAction = actions[1] as ImagemapMessageAction; Assert.AreEqual("TestImagemapMessageAction", messageAction.Text); Assert.AreEqual(4, messageAction.Area.X); Assert.AreEqual(3, messageAction.Area.Y); Assert.AreEqual(2, messageAction.Area.Width); Assert.AreEqual(1, messageAction.Area.Height); }
public void Convert_InvalidAction_ThrowsException() { TestImagemapMessage message = new TestImagemapMessage() { Actions = new InvalidAction[] { new InvalidAction() } }; ExceptionAssert.Throws <NotSupportedException>("Invalid action type.", () => { MessageConverter.Convert(new ISendMessage[1] { message }); }); }
public void Convert_ImagemapMessageActionWithoutText_ThrowsException() { TestImagemapMessage message = new TestImagemapMessage() { Actions = new TestImagemapMessageAction[] { new TestImagemapMessageAction() { Text = null } } }; ExceptionAssert.Throws <InvalidOperationException>("The text cannot be null.", () => { MessageConverter.Convert(new ISendMessage[] { message }); }); }
public void Convert_ImagemapMessageAreaUrlIsNull_ThrowsException() { TestImagemapMessage message = new TestImagemapMessage() { Actions = new TestImagemapUriAction[] { new TestImagemapUriAction() { Url = null } } }; ExceptionAssert.Throws <InvalidOperationException>("The url cannot be null.", () => { MessageConverter.Convert(new ISendMessage[] { message }); }); }
public void Convert_ImagemapMessageAreaWithoutHeight_ThrowsException() { TestImagemapMessage message = new TestImagemapMessage() { Actions = new TestImagemapUriAction[] { new TestImagemapUriAction() { Area = new TestImagemapArea() { Height = 0 } } } }; ExceptionAssert.Throws <InvalidOperationException>("The height should be at least 1.", () => { MessageConverter.Convert(new ISendMessage[] { message }); }); }