summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Core.UnitTests
diff options
context:
space:
mode:
authorE.Z. Hart <hartez@gmail.com>2016-03-22 17:16:53 -0600
committerE.Z. Hart <hartez@gmail.com>2016-03-30 16:22:35 -0600
commit17e2a4b94d5105b53c5875d9416d043f14313305 (patch)
tree6f03e5d6f562f230ed79d2e820327fe0bddc5069 /Xamarin.Forms.Core.UnitTests
parentb3a64fadb3951d4e5e65b5f000a5f930772c01ed (diff)
downloadxamarin-forms-17e2a4b94d5105b53c5875d9416d043f14313305.tar.gz
xamarin-forms-17e2a4b94d5105b53c5875d9416d043f14313305.tar.bz2
xamarin-forms-17e2a4b94d5105b53c5875d9416d043f14313305.zip
Add options for specifying layout of button text/image content
Also make the layout and layout defaults consistent across platforms
Diffstat (limited to 'Xamarin.Forms.Core.UnitTests')
-rw-r--r--Xamarin.Forms.Core.UnitTests/ButtonUnitTest.cs24
1 files changed, 24 insertions, 0 deletions
diff --git a/Xamarin.Forms.Core.UnitTests/ButtonUnitTest.cs b/Xamarin.Forms.Core.UnitTests/ButtonUnitTest.cs
index 29ad2d0e..78d97a86 100644
--- a/Xamarin.Forms.Core.UnitTests/ButtonUnitTest.cs
+++ b/Xamarin.Forms.Core.UnitTests/ButtonUnitTest.cs
@@ -1,4 +1,5 @@
using System;
+using System.Diagnostics;
using NUnit.Framework;
namespace Xamarin.Forms.Core.UnitTests
@@ -177,5 +178,28 @@ namespace Xamarin.Forms.Core.UnitTests
Assert.True (button.IsEnabled);
}
+
+ [Test]
+ public void ButtonContentLayoutTypeConverterTest()
+ {
+ var converter = new Button.ButtonContentTypeConverter();
+ Assert.True(converter.CanConvertFrom(typeof(string)));
+
+ AssertButtonContentLayoutsEqual(new Button.ButtonContentLayout(Button.ButtonContentLayout.ImagePosition.Left, 10), converter.ConvertFromInvariantString("left,10"));
+ AssertButtonContentLayoutsEqual(new Button.ButtonContentLayout(Button.ButtonContentLayout.ImagePosition.Right, 10), converter.ConvertFromInvariantString("right"));
+ AssertButtonContentLayoutsEqual(new Button.ButtonContentLayout(Button.ButtonContentLayout.ImagePosition.Top, 20), converter.ConvertFromInvariantString("top,20"));
+ AssertButtonContentLayoutsEqual(new Button.ButtonContentLayout(Button.ButtonContentLayout.ImagePosition.Left, 15), converter.ConvertFromInvariantString("15"));
+ AssertButtonContentLayoutsEqual(new Button.ButtonContentLayout(Button.ButtonContentLayout.ImagePosition.Bottom, 0), converter.ConvertFromInvariantString("Bottom, 0"));
+
+ Assert.Throws<InvalidOperationException>(() => converter.ConvertFromInvariantString(""));
+ }
+
+ private void AssertButtonContentLayoutsEqual(Button.ButtonContentLayout layout1, object layout2)
+ {
+ var bcl = (Button.ButtonContentLayout)layout2;
+
+ Assert.AreEqual(layout1.Position, bcl.Position);
+ Assert.AreEqual(layout1.Spacing, bcl.Spacing);
+ }
}
}