summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Xaml.UnitTests
diff options
context:
space:
mode:
authorStephane Delcroix <stephane@delcroix.org>2016-12-23 08:50:02 +0100
committerGitHub <noreply@github.com>2016-12-23 08:50:02 +0100
commit2c91b0facd2a25d0de9a283b44cf818329d4c06f (patch)
treea1e659906258f2fc5c8c67d825a229ecf82db67b /Xamarin.Forms.Xaml.UnitTests
parent0c87fcff41bef841f83ef62de5cdc3d821980d33 (diff)
downloadxamarin-forms-2c91b0facd2a25d0de9a283b44cf818329d4c06f.tar.gz
xamarin-forms-2c91b0facd2a25d0de9a283b44cf818329d4c06f.tar.bz2
xamarin-forms-2c91b0facd2a25d0de9a283b44cf818329d4c06f.zip
[XamlC] import members on x:Static and factories (#642)
Diffstat (limited to 'Xamarin.Forms.Xaml.UnitTests')
-rw-r--r--Xamarin.Forms.Xaml.UnitTests/BuiltInConversions.xaml.cs32
-rw-r--r--Xamarin.Forms.Xaml.UnitTests/Issues/Unreported008.xaml23
-rw-r--r--Xamarin.Forms.Xaml.UnitTests/Issues/Unreported008.xaml.cs46
-rw-r--r--Xamarin.Forms.Xaml.UnitTests/Xamarin.Forms.Xaml.UnitTests.csproj6
4 files changed, 101 insertions, 6 deletions
diff --git a/Xamarin.Forms.Xaml.UnitTests/BuiltInConversions.xaml.cs b/Xamarin.Forms.Xaml.UnitTests/BuiltInConversions.xaml.cs
index 20d4afd2..2299928c 100644
--- a/Xamarin.Forms.Xaml.UnitTests/BuiltInConversions.xaml.cs
+++ b/Xamarin.Forms.Xaml.UnitTests/BuiltInConversions.xaml.cs
@@ -1,6 +1,7 @@
using System;
using NUnit.Framework;
+using Xamarin.Forms.Core.UnitTests;
namespace Xamarin.Forms.Xaml.UnitTests
{
@@ -11,22 +12,41 @@ namespace Xamarin.Forms.Xaml.UnitTests
InitializeComponent ();
}
+ public BuiltInConversions(bool useCompiledXaml)
+ {
+ //this stub will be replaced at compile time
+ }
+
[TestFixture]
public class Tests
{
- [Test]
- public void Datetime ()
+ [SetUp]
+ public void Setup()
+ {
+ Device.PlatformServices = new MockPlatformServices();
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ Device.PlatformServices = null;
+ }
+
+ [TestCase(false)]
+ [TestCase(true)]
+ public void Datetime (bool useCompiledXaml)
{
- var layout = new BuiltInConversions ();
+ var layout = new BuiltInConversions (useCompiledXaml);
Assert.AreEqual (new DateTime (2015, 01, 16), layout.datetime0.Date);
Assert.AreEqual (new DateTime (2015, 01, 16), layout.datetime1.Date);
}
- [Test]
- public void String ()
+ [TestCase(false)]
+ [TestCase(true)]
+ public void String (bool useCompiledXaml)
{
- var layout = new BuiltInConversions ();
+ var layout = new BuiltInConversions (useCompiledXaml);
Assert.AreEqual ("foobar", layout.label0.Text);
Assert.AreEqual ("foobar", layout.label1.Text);
diff --git a/Xamarin.Forms.Xaml.UnitTests/Issues/Unreported008.xaml b/Xamarin.Forms.Xaml.UnitTests/Issues/Unreported008.xaml
new file mode 100644
index 00000000..77c2689a
--- /dev/null
+++ b/Xamarin.Forms.Xaml.UnitTests/Issues/Unreported008.xaml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
+ xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
+ xmlns:sys="clr-namespace:System;assembly=mscorlib"
+ x:Class="Xamarin.Forms.Xaml.UnitTests.Unreported008">
+ <DatePicker Date="{x:Static sys:DateTime.Now}" x:Name="picker0">
+ <DatePicker.Format>yyyy-MM-dd</DatePicker.Format>
+ <DatePicker.MinimumDate>
+ <sys:DateTime x:FactoryMethod="Parse">
+ <x:Arguments>
+ <x:String>Jan 1 2000</x:String>
+ </x:Arguments>
+ </sys:DateTime>
+ </DatePicker.MinimumDate>
+ <DatePicker.MaximumDate>
+ <sys:DateTime x:FactoryMethod="Parse">
+ <x:Arguments>
+ <x:String>Dec 31 2050</x:String>
+ </x:Arguments>
+ </sys:DateTime>
+ </DatePicker.MaximumDate>
+ </DatePicker>
+</ContentPage> \ No newline at end of file
diff --git a/Xamarin.Forms.Xaml.UnitTests/Issues/Unreported008.xaml.cs b/Xamarin.Forms.Xaml.UnitTests/Issues/Unreported008.xaml.cs
new file mode 100644
index 00000000..d5f84d41
--- /dev/null
+++ b/Xamarin.Forms.Xaml.UnitTests/Issues/Unreported008.xaml.cs
@@ -0,0 +1,46 @@
+using System;
+using NUnit.Framework;
+using Xamarin.Forms.Core.UnitTests;
+
+namespace Xamarin.Forms.Xaml.UnitTests
+{
+ [XamlCompilation(XamlCompilationOptions.Skip)]
+ public partial class Unreported008 : ContentPage
+ {
+ public Unreported008()
+ {
+ InitializeComponent();
+ }
+
+ public Unreported008(bool useCompiledXaml)
+ {
+ //this stub will be replaced at compile time
+ }
+
+ [TestFixture]
+ class Tests
+ {
+ [SetUp]
+ public void Setup()
+ {
+ Device.PlatformServices = new MockPlatformServices();
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ Device.PlatformServices = null;
+ }
+
+ [TestCase(true), TestCase(false)]
+ public void PickerDateTimesAndXamlC(bool useCompiledXaml)
+ {
+ var page = new Unreported008(useCompiledXaml);
+ var picker = page.picker0;
+ Assert.AreEqual(DateTime.Today, picker.Date.Date);
+ Assert.AreEqual(new DateTime(2000, 1, 1), picker.MinimumDate);
+ Assert.AreEqual(new DateTime(2050, 12, 31), picker.MaximumDate);
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/Xamarin.Forms.Xaml.UnitTests/Xamarin.Forms.Xaml.UnitTests.csproj b/Xamarin.Forms.Xaml.UnitTests/Xamarin.Forms.Xaml.UnitTests.csproj
index 4f14fd36..8864a388 100644
--- a/Xamarin.Forms.Xaml.UnitTests/Xamarin.Forms.Xaml.UnitTests.csproj
+++ b/Xamarin.Forms.Xaml.UnitTests/Xamarin.Forms.Xaml.UnitTests.csproj
@@ -406,6 +406,9 @@
<Compile Include="Issues\Bz49307.xaml.cs">
<DependentUpon>Bz49307.xaml</DependentUpon>
</Compile>
+ <Compile Include="Issues\Unreported008.xaml.cs">
+ <DependentUpon>Unreported008.xaml</DependentUpon>
+ </Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="..\.nuspec\Xamarin.Forms.Debug.targets" />
@@ -733,6 +736,9 @@
<EmbeddedResource Include="Issues\Bz49307.xaml">
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
</EmbeddedResource>
+ <EmbeddedResource Include="Issues\Unreported008.xaml">
+ <Generator>MSBuild:UpdateDesignTimeXaml</Generator>
+ </EmbeddedResource>
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />