From 775df09a3e45e90128f9047e8618461d4c4411a0 Mon Sep 17 00:00:00 2001 From: Stephane Delcroix Date: Mon, 15 Aug 2016 22:06:11 +0200 Subject: [Xaml] x:Static in x:Arguments (#288) * [Xaml] Support x:Static as x:Arguments * [XamlC] allow x:Static in x:Arguments * fix typo, remove commented code --- Xamarin.Forms.Xaml.UnitTests/FactoryMethods.xaml | 14 ++++++++++ .../FactoryMethods.xaml.cs | 30 +++++++++++++++++++++- .../Validation/StaticExtensionException.xaml.cs | 2 +- 3 files changed, 44 insertions(+), 2 deletions(-) (limited to 'Xamarin.Forms.Xaml.UnitTests') diff --git a/Xamarin.Forms.Xaml.UnitTests/FactoryMethods.xaml b/Xamarin.Forms.Xaml.UnitTests/FactoryMethods.xaml index a90a0378..5225c7d9 100644 --- a/Xamarin.Forms.Xaml.UnitTests/FactoryMethods.xaml +++ b/Xamarin.Forms.Xaml.UnitTests/FactoryMethods.xaml @@ -54,5 +54,19 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Xamarin.Forms.Xaml.UnitTests/FactoryMethods.xaml.cs b/Xamarin.Forms.Xaml.UnitTests/FactoryMethods.xaml.cs index 42f359b7..9fa4e924 100644 --- a/Xamarin.Forms.Xaml.UnitTests/FactoryMethods.xaml.cs +++ b/Xamarin.Forms.Xaml.UnitTests/FactoryMethods.xaml.cs @@ -1,5 +1,6 @@ using Xamarin.Forms; using NUnit.Framework; +using Xamarin.Forms.Core.UnitTests; namespace Xamarin.Forms.Xaml.UnitTests { @@ -16,11 +17,16 @@ namespace Xamarin.Forms.Xaml.UnitTests Content = "default ctor"; } - public MockFactory (string arg0, string arg1) + public MockFactory(string arg0, string arg1) { Content = "alternate ctor " + arg0 + arg1; } + public MockFactory(string arg0) + { + Content = "alternate ctor " + arg0; + } + public MockFactory (int arg) { Content = "int ctor " + arg.ToString (); @@ -63,6 +69,12 @@ namespace Xamarin.Forms.Xaml.UnitTests [TestFixture] public class Tests { + [SetUp] + public void SetUp() + { + Device.PlatformServices = new MockPlatformServices(); + } + [TestCase (false)] [TestCase (true)] public void TestDefaultCtor (bool useCompiledXaml) @@ -110,6 +122,22 @@ namespace Xamarin.Forms.Xaml.UnitTests var layout = new FactoryMethods (useCompiledXaml); Assert.AreEqual ("factory 42foo", layout.v5.Content.Content); } + + [TestCase(false)] + [TestCase(true)] + public void TestCtorWithxStatic(bool useCompiledXaml) + { + var layout = new FactoryMethods(useCompiledXaml); + Assert.AreEqual("alternate ctor Property", layout.v6.Content.Content); + } + + [TestCase(false)] + [TestCase(true)] + public void TestCtorWithxStaticAttribute(bool useCompiledXaml) + { + var layout = new FactoryMethods(useCompiledXaml); + Assert.AreEqual("alternate ctor Property", layout.v7.Content.Content); + } } } } \ No newline at end of file diff --git a/Xamarin.Forms.Xaml.UnitTests/Validation/StaticExtensionException.xaml.cs b/Xamarin.Forms.Xaml.UnitTests/Validation/StaticExtensionException.xaml.cs index d7476b74..cb8b22b4 100644 --- a/Xamarin.Forms.Xaml.UnitTests/Validation/StaticExtensionException.xaml.cs +++ b/Xamarin.Forms.Xaml.UnitTests/Validation/StaticExtensionException.xaml.cs @@ -7,6 +7,7 @@ using NUnit.Framework; namespace Xamarin.Forms.Xaml.UnitTests { + [XamlCompilation(XamlCompilationOptions.Skip)] public partial class StaticExtensionException : ContentPage { public StaticExtensionException () @@ -23,7 +24,6 @@ namespace Xamarin.Forms.Xaml.UnitTests public class Issue2115 { [TestCase (false)] - [TestCase (true)] public void xStaticThrowsMeaningfullException (bool useCompiledXaml) { Assert.Throws (new XamlParseExceptionConstraint (6, 34), () => new StaticExtensionException (useCompiledXaml)); -- cgit v1.2.3