diff --git a/csharp/Facebook.Yoga.Desktop.sln b/csharp/Facebook.Yoga.Desktop.sln
index 8ad6bc24..8058b4ea 100644
--- a/csharp/Facebook.Yoga.Desktop.sln
+++ b/csharp/Facebook.Yoga.Desktop.sln
@@ -37,44 +37,54 @@ Global
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
+ Debug|ARM = Debug|ARM
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
+ Release|ARM = Release|ARM
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|Any CPU.ActiveCfg = Debug|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|Any CPU.Build.0 = Debug|Win32
+ {0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|ARM.ActiveCfg = Debug|ARM
+ {0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|ARM.Build.0 = Debug|ARM
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|x64.ActiveCfg = Debug|x64
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|x64.Build.0 = Debug|x64
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|x86.ActiveCfg = Debug|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|x86.Build.0 = Debug|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|Any CPU.ActiveCfg = Release|Win32
+ {0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|ARM.ActiveCfg = Release|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|x64.ActiveCfg = Release|x64
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|x64.Build.0 = Release|x64
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|x86.ActiveCfg = Release|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|x86.Build.0 = Release|Win32
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Debug|ARM.ActiveCfg = Debug|ARM
+ {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Debug|ARM.Build.0 = Debug|ARM
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Debug|x64.ActiveCfg = Debug|x64
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Debug|x64.Build.0 = Debug|x64
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Debug|x86.ActiveCfg = Debug|x86
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Debug|x86.Build.0 = Debug|x86
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|ARM.ActiveCfg = Release|Any CPU
+ {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|ARM.Build.0 = Release|Any CPU
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x64.ActiveCfg = Release|x64
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x64.Build.0 = Release|x64
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x86.ActiveCfg = Release|x86
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x86.Build.0 = Release|x86
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|ARM.ActiveCfg = Debug|x86
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x64.ActiveCfg = Debug|x64
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x64.Build.0 = Debug|x64
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x86.ActiveCfg = Debug|x86
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x86.Build.0 = Debug|x86
- {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|Any CPU.Build.0 = Release|Any CPU
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|Any CPU.ActiveCfg = Release|x86
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|ARM.ActiveCfg = Release|x86
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|x64.ActiveCfg = Release|x64
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|x64.Build.0 = Release|x64
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|x86.ActiveCfg = Release|x86
diff --git a/csharp/Facebook.Yoga.Universal.sln b/csharp/Facebook.Yoga.Universal.sln
index c0bddb15..8058b4ea 100644
--- a/csharp/Facebook.Yoga.Universal.sln
+++ b/csharp/Facebook.Yoga.Universal.sln
@@ -18,21 +18,22 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Facebook.Yoga.Shared.Tests"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NETStandard", "NETStandard", "{DCF7899B-A487-49C0-BCDE-DC088B6750C2}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga.Universal.Tests", "tests\Facebook.Yoga.Universal.Tests\Facebook.Yoga.Universal.Tests.csproj", "{4130594A-0BFE-4846-8A98-2D6040C7B2E5}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga.Desktop.Tests", "tests\Facebook.Yoga.Desktop.Tests\Facebook.Yoga.Desktop.Tests.csproj", "{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{EA552E8A-0245-4614-84D6-DFC5C582004B}"
ProjectSection(SolutionItems) = preProject
- NuGet\CreatePackage.ps1 = NuGet\CreatePackage.ps1
NuGet\Facebook.Yoga.Native.nuspec = NuGet\Facebook.Yoga.Native.nuspec
NuGet\Facebook.Yoga.Native.targets = NuGet\Facebook.Yoga.Native.targets
Build\Facebook.Yoga.NativeInterop.targets = Build\Facebook.Yoga.NativeInterop.targets
NuGet\Facebook.Yoga.nuspec = NuGet\Facebook.Yoga.nuspec
NuGet\Facebook.Yoga.targets = NuGet\Facebook.Yoga.targets
+ nuget\NuGetPackageBuilder.ps1 = nuget\NuGetPackageBuilder.ps1
EndProjectSection
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
tests\Facebook.Yoga\Facebook.Yoga.Shared.Tests.projitems*{320eb7b7-ce99-4382-b145-bdd49f33c7b2}*SharedItemsImports = 13
+ tests\Facebook.Yoga\Facebook.Yoga.Shared.Tests.projitems*{ac23f444-5545-4196-8b9f-5c1f6b3e7fb3}*SharedItemsImports = 4
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -46,6 +47,7 @@ Global
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|Any CPU.ActiveCfg = Debug|Win32
+ {0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|Any CPU.Build.0 = Debug|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|ARM.ActiveCfg = Debug|ARM
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|ARM.Build.0 = Debug|ARM
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|x64.ActiveCfg = Debug|x64
@@ -53,8 +55,7 @@ Global
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|x86.ActiveCfg = Debug|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|x86.Build.0 = Debug|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|Any CPU.ActiveCfg = Release|Win32
- {0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|ARM.ActiveCfg = Release|ARM
- {0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|ARM.Build.0 = Release|ARM
+ {0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|ARM.ActiveCfg = Release|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|x64.ActiveCfg = Release|x64
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|x64.Build.0 = Release|x64
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|x86.ActiveCfg = Release|Win32
@@ -69,36 +70,25 @@ Global
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Debug|x86.Build.0 = Debug|x86
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|Any CPU.Build.0 = Release|Any CPU
- {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|ARM.ActiveCfg = Release|ARM
- {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|ARM.Build.0 = Release|ARM
+ {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|ARM.ActiveCfg = Release|Any CPU
+ {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|ARM.Build.0 = Release|Any CPU
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x64.ActiveCfg = Release|x64
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x64.Build.0 = Release|x64
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x86.ActiveCfg = Release|x86
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x86.Build.0 = Release|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|ARM.ActiveCfg = Debug|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|ARM.Build.0 = Debug|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|ARM.Deploy.0 = Debug|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x64.ActiveCfg = Debug|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x64.Build.0 = Debug|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x64.Deploy.0 = Debug|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x86.ActiveCfg = Debug|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x86.Build.0 = Debug|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x86.Deploy.0 = Debug|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|Any CPU.Build.0 = Release|Any CPU
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|Any CPU.Deploy.0 = Release|Any CPU
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|ARM.ActiveCfg = Release|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|ARM.Build.0 = Release|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|ARM.Deploy.0 = Release|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x64.ActiveCfg = Release|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x64.Build.0 = Release|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x64.Deploy.0 = Release|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x86.ActiveCfg = Release|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x86.Build.0 = Release|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x86.Deploy.0 = Release|x86
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|ARM.ActiveCfg = Debug|x86
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x64.ActiveCfg = Debug|x64
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x64.Build.0 = Debug|x64
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x86.ActiveCfg = Debug|x86
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x86.Build.0 = Debug|x86
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|Any CPU.ActiveCfg = Release|x86
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|ARM.ActiveCfg = Release|x86
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|x64.ActiveCfg = Release|x64
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|x64.Build.0 = Release|x64
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|x86.ActiveCfg = Release|x86
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -107,6 +97,6 @@ Global
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5} = {51A8E803-C084-431F-9130-F277481C2BB2}
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD} = {DCF7899B-A487-49C0-BCDE-DC088B6750C2}
{320EB7B7-CE99-4382-B145-BDD49F33C7B2} = {5289E508-8386-45A1-A12B-258A5899CD45}
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5} = {5289E508-8386-45A1-A12B-258A5899CD45}
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3} = {5289E508-8386-45A1-A12B-258A5899CD45}
EndGlobalSection
EndGlobal
diff --git a/csharp/Facebook.Yoga.sln b/csharp/Facebook.Yoga.sln
index d63b0ddb..8058b4ea 100644
--- a/csharp/Facebook.Yoga.sln
+++ b/csharp/Facebook.Yoga.sln
@@ -18,17 +18,15 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Facebook.Yoga.Shared.Tests"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NETStandard", "NETStandard", "{DCF7899B-A487-49C0-BCDE-DC088B6750C2}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga.Universal.Tests", "tests\Facebook.Yoga.Universal.Tests\Facebook.Yoga.Universal.Tests.csproj", "{4130594A-0BFE-4846-8A98-2D6040C7B2E5}"
-EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga.Desktop.Tests", "tests\Facebook.Yoga.Desktop.Tests\Facebook.Yoga.Desktop.Tests.csproj", "{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{EA552E8A-0245-4614-84D6-DFC5C582004B}"
ProjectSection(SolutionItems) = preProject
- nuget\Facebook.Yoga.Native.nuspec = nuget\Facebook.Yoga.Native.nuspec
- nuget\Facebook.Yoga.Native.targets = nuget\Facebook.Yoga.Native.targets
+ NuGet\Facebook.Yoga.Native.nuspec = NuGet\Facebook.Yoga.Native.nuspec
+ NuGet\Facebook.Yoga.Native.targets = NuGet\Facebook.Yoga.Native.targets
Build\Facebook.Yoga.NativeInterop.targets = Build\Facebook.Yoga.NativeInterop.targets
- nuget\Facebook.Yoga.nuspec = nuget\Facebook.Yoga.nuspec
- nuget\Facebook.Yoga.targets = nuget\Facebook.Yoga.targets
+ NuGet\Facebook.Yoga.nuspec = NuGet\Facebook.Yoga.nuspec
+ NuGet\Facebook.Yoga.targets = NuGet\Facebook.Yoga.targets
nuget\NuGetPackageBuilder.ps1 = nuget\NuGetPackageBuilder.ps1
EndProjectSection
EndProject
@@ -57,8 +55,7 @@ Global
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|x86.ActiveCfg = Debug|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Debug|x86.Build.0 = Debug|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|Any CPU.ActiveCfg = Release|Win32
- {0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|ARM.ActiveCfg = Release|ARM
- {0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|ARM.Build.0 = Release|ARM
+ {0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|ARM.ActiveCfg = Release|Win32
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|x64.ActiveCfg = Release|x64
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|x64.Build.0 = Release|x64
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}.Release|x86.ActiveCfg = Release|Win32
@@ -73,43 +70,21 @@ Global
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Debug|x86.Build.0 = Debug|x86
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|Any CPU.Build.0 = Release|Any CPU
- {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|ARM.ActiveCfg = Release|ARM
- {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|ARM.Build.0 = Release|ARM
+ {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|ARM.ActiveCfg = Release|Any CPU
+ {3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|ARM.Build.0 = Release|Any CPU
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x64.ActiveCfg = Release|x64
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x64.Build.0 = Release|x64
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x86.ActiveCfg = Release|x86
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}.Release|x86.Build.0 = Release|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|Any CPU.ActiveCfg = Debug|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|ARM.ActiveCfg = Debug|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|ARM.Build.0 = Debug|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|ARM.Deploy.0 = Debug|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x64.ActiveCfg = Debug|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x64.Build.0 = Debug|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x64.Deploy.0 = Debug|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x86.ActiveCfg = Debug|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x86.Build.0 = Debug|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Debug|x86.Deploy.0 = Debug|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|Any CPU.ActiveCfg = Release|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|ARM.ActiveCfg = Release|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|ARM.Build.0 = Release|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|ARM.Deploy.0 = Release|ARM
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x64.ActiveCfg = Release|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x64.Build.0 = Release|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x64.Deploy.0 = Release|x64
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x86.ActiveCfg = Release|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x86.Build.0 = Release|x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}.Release|x86.Deploy.0 = Release|x86
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|ARM.ActiveCfg = Debug|Any CPU
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|ARM.ActiveCfg = Debug|x86
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x64.ActiveCfg = Debug|x64
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x64.Build.0 = Debug|x64
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x86.ActiveCfg = Debug|x86
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Debug|x86.Build.0 = Debug|x86
- {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|Any CPU.Build.0 = Release|Any CPU
- {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|ARM.ActiveCfg = Release|Any CPU
- {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|ARM.Build.0 = Release|Any CPU
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|Any CPU.ActiveCfg = Release|x86
+ {AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|ARM.ActiveCfg = Release|x86
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|x64.ActiveCfg = Release|x64
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|x64.Build.0 = Release|x64
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3}.Release|x86.ActiveCfg = Release|x86
@@ -122,7 +97,6 @@ Global
{0446C86B-F47B-4C46-B673-C7AE0CFF35D5} = {51A8E803-C084-431F-9130-F277481C2BB2}
{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD} = {DCF7899B-A487-49C0-BCDE-DC088B6750C2}
{320EB7B7-CE99-4382-B145-BDD49F33C7B2} = {5289E508-8386-45A1-A12B-258A5899CD45}
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5} = {5289E508-8386-45A1-A12B-258A5899CD45}
{AC23F444-5545-4196-8B9F-5C1F6B3E7FB3} = {5289E508-8386-45A1-A12B-258A5899CD45}
EndGlobalSection
EndGlobal
diff --git a/csharp/Facebook.Yoga/Facebook.Yoga.csproj b/csharp/Facebook.Yoga/Facebook.Yoga.csproj
index d4b0cc76..2ef3d80f 100644
--- a/csharp/Facebook.Yoga/Facebook.Yoga.csproj
+++ b/csharp/Facebook.Yoga/Facebook.Yoga.csproj
@@ -102,6 +102,7 @@
+
diff --git a/csharp/Facebook.Yoga/Properties/AssemblyInfo.cs b/csharp/Facebook.Yoga/Properties/AssemblyInfo.cs
index bc0b9929..089c3a6c 100644
--- a/csharp/Facebook.Yoga/Properties/AssemblyInfo.cs
+++ b/csharp/Facebook.Yoga/Properties/AssemblyInfo.cs
@@ -11,22 +11,19 @@ using System.Reflection;
using System.Resources;
using System.Runtime.InteropServices;
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
+[assembly: AssemblyTitle("Facebook.Yoga")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Facebook, Inc.")]
[assembly: AssemblyProduct("Facebook.Yoga")]
-[assembly: AssemblyTrademark("Copyright (c) 2014-present, Facebook, Inc.")]
+[assembly: AssemblyDescription("A subset of CSS's flexbox layout algorithm and box model.")]
+[assembly: AssemblyCopyright("Copyright (c) 2014-present, Facebook, Inc.")]
-// Setting ComVisible to false makes the types in this assembly not visible
-// to COM components. If you need to access a type in this assembly from
-// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
-// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("75bb7605-e54b-4ede-8f5a-ff1f24464236")]
[assembly: NeutralResourcesLanguage("en")]
[assembly: AssemblyVersion("3.0.0.0")]
+[assembly: AssemblyFileVersion("3.0.0.0")]
+
diff --git a/csharp/Yoga/Yoga.vcxproj b/csharp/Yoga/Yoga.vcxproj
index 9895d740..6a0622e9 100755
--- a/csharp/Yoga/Yoga.vcxproj
+++ b/csharp/Yoga/Yoga.vcxproj
@@ -31,6 +31,7 @@
Win32Proj
Yoga
8.1
+ true
diff --git a/csharp/nuget/Facebook.Yoga.Native.nuspec b/csharp/nuget/Facebook.Yoga.Native.nuspec
index af6fd30e..76955e35 100644
--- a/csharp/nuget/Facebook.Yoga.Native.nuspec
+++ b/csharp/nuget/Facebook.Yoga.Native.nuspec
@@ -2,7 +2,7 @@
Facebook.Yoga.Native
- 2.0.4-pre
+ 3.0.0-pre
Facebook.Yoga.Native
Facebook
Facebook
@@ -27,9 +27,12 @@
+
-
+
+
+
\ No newline at end of file
diff --git a/csharp/nuget/Facebook.Yoga.Native.targets b/csharp/nuget/Facebook.Yoga.Native.targets
index b5b0043f..2a2705f0 100644
--- a/csharp/nuget/Facebook.Yoga.Native.targets
+++ b/csharp/nuget/Facebook.Yoga.Native.targets
@@ -26,4 +26,11 @@
False
+
+
+ %(Filename)%(Extension)
+ PreserveNewest
+ False
+
+
diff --git a/csharp/nuget/Facebook.Yoga.nuspec b/csharp/nuget/Facebook.Yoga.nuspec
index 73de5095..3cbbc6d8 100644
--- a/csharp/nuget/Facebook.Yoga.nuspec
+++ b/csharp/nuget/Facebook.Yoga.nuspec
@@ -2,7 +2,7 @@
Facebook.Yoga
- 2.0.4-pre
+ 3.0.0-pre
Facebook.Yoga
Facebook
Facebook
@@ -11,7 +11,7 @@
false
A subset of CSS's flexbox layout algorithm and box model.
Copyright 2016 Facebook
- flexbox flex-box css layout css-layout yoga facebook
+ flexbox flex-box css layout css-layout yoga facebook native
@@ -26,13 +26,21 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/csharp/nuget/Facebook.Yoga.targets b/csharp/nuget/Facebook.Yoga.targets
index d241b634..b10fb47c 100644
--- a/csharp/nuget/Facebook.Yoga.targets
+++ b/csharp/nuget/Facebook.Yoga.targets
@@ -36,4 +36,16 @@
False
+
+
+ %(Filename)%(Extension)
+ PreserveNewest
+ False
+
+
+ %(Filename)%(Extension)
+ PreserveNewest
+ False
+
+
\ No newline at end of file
diff --git a/csharp/tests/Facebook.Yoga.Desktop.Tests/Properties/AssemblyInfo.cs b/csharp/tests/Facebook.Yoga.Desktop.Tests/Properties/AssemblyInfo.cs
index fa16ead2..1f0b4b85 100644
--- a/csharp/tests/Facebook.Yoga.Desktop.Tests/Properties/AssemblyInfo.cs
+++ b/csharp/tests/Facebook.Yoga.Desktop.Tests/Properties/AssemblyInfo.cs
@@ -11,24 +11,18 @@ using System.Reflection;
using System.Resources;
using System.Runtime.InteropServices;
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
+[assembly: AssemblyTitle("Facebook.Yoga.Desktop.Tests")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Facebook, Inc.")]
[assembly: AssemblyProduct("Facebook.Yoga")]
-[assembly: AssemblyTrademark("Copyright (c) 2014-present, Facebook, Inc.")]
+[assembly: AssemblyCopyright("Copyright (c) 2014-present, Facebook, Inc.")]
-// Setting ComVisible to false makes the types in this assembly not visible
-// to COM components. If you need to access a type in this assembly from
-// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
-// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("ac23f444-5545-4196-8b9f-5c1f6b3e7fb3")]
[assembly: NeutralResourcesLanguage("en")]
[assembly: AssemblyVersion("3.0.0.0")]
-[assembly: AssemblyTitle("Facebook.Yoga")]
+[assembly: AssemblyFileVersion("3.0.0.0")]
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/LockScreenLogo.scale-200.png b/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/LockScreenLogo.scale-200.png
deleted file mode 100644
index 735f57ad..00000000
Binary files a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/LockScreenLogo.scale-200.png and /dev/null differ
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/SplashScreen.scale-200.png b/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/SplashScreen.scale-200.png
deleted file mode 100644
index 023e7f1f..00000000
Binary files a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/SplashScreen.scale-200.png and /dev/null differ
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Square150x150Logo.scale-200.png b/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Square150x150Logo.scale-200.png
deleted file mode 100644
index af49fec1..00000000
Binary files a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Square150x150Logo.scale-200.png and /dev/null differ
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Square44x44Logo.scale-200.png b/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Square44x44Logo.scale-200.png
deleted file mode 100644
index ce342a2e..00000000
Binary files a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Square44x44Logo.scale-200.png and /dev/null differ
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Square44x44Logo.targetsize-24_altform-unplated.png b/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
deleted file mode 100644
index f6c02ce9..00000000
Binary files a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Square44x44Logo.targetsize-24_altform-unplated.png and /dev/null differ
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/StoreLogo.png b/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/StoreLogo.png
deleted file mode 100644
index 7385b56c..00000000
Binary files a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/StoreLogo.png and /dev/null differ
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Wide310x150Logo.scale-200.png b/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Wide310x150Logo.scale-200.png
deleted file mode 100644
index 288995b3..00000000
Binary files a/csharp/tests/Facebook.Yoga.Universal.Tests/Assets/Wide310x150Logo.scale-200.png and /dev/null differ
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Facebook.Yoga.Universal.Tests.csproj b/csharp/tests/Facebook.Yoga.Universal.Tests/Facebook.Yoga.Universal.Tests.csproj
deleted file mode 100644
index 3022e94d..00000000
--- a/csharp/tests/Facebook.Yoga.Universal.Tests/Facebook.Yoga.Universal.Tests.csproj
+++ /dev/null
@@ -1,146 +0,0 @@
-
-
-
-
- Debug
- x86
- {4130594A-0BFE-4846-8A98-2D6040C7B2E5}
- AppContainerExe
- Properties
- Facebook.CSSLayout.Universal.Tests
- Facebook.CSSLayout.Universal.Tests
- en-US
- UAP
- 10.0.10586.0
- 10.0.10240.0
- 14
- 512
- {A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
- Facebook.CSSLayout.Universal.Tests_TemporaryKey.pfx
- 14.0
-
-
- true
- bin\x86\Debug\
- DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
- ;2008
- full
- x86
- false
- prompt
- true
-
-
- bin\x86\Release\
- TRACE;NETFX_CORE;WINDOWS_UWP
- true
- ;2008
- pdbonly
- x86
- false
- prompt
- true
- true
-
-
- true
- bin\ARM\Debug\
- DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
- ;2008
- full
- ARM
- false
- prompt
- true
-
-
- bin\ARM\Release\
- TRACE;NETFX_CORE;WINDOWS_UWP
- true
- ;2008
- pdbonly
- ARM
- false
- prompt
- true
- true
-
-
- true
- bin\x64\Debug\
- DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
- ;2008
- full
- x64
- false
- prompt
- true
-
-
- bin\x64\Release\
- TRACE;NETFX_CORE;WINDOWS_UWP
- true
- ;2008
- pdbonly
- x64
- false
- prompt
- true
- true
-
-
-
-
-
-
-
-
-
-
- UnitTestApp.xaml
-
-
-
-
-
- MSBuild:Compile
- Designer
-
-
-
-
- Designer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {3aace384-fdec-4d91-a3b2-eeb21b46c9ad}
- Facebook.Yoga
-
-
-
- 14.0
-
-
-
-
-
- This project references a native interop target that is missing. The missing build target is {0}.
-
-
-
-
\ No newline at end of file
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Package.appxmanifest b/csharp/tests/Facebook.Yoga.Universal.Tests/Package.appxmanifest
deleted file mode 100644
index db158f81..00000000
--- a/csharp/tests/Facebook.Yoga.Universal.Tests/Package.appxmanifest
+++ /dev/null
@@ -1,45 +0,0 @@
-
-
-
-
-
-
-
-
- Facebook.CSSLayout.Universal.Tests
- anforste
- Assets\StoreLogo.png
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Properties/AssemblyInfo.cs b/csharp/tests/Facebook.Yoga.Universal.Tests/Properties/AssemblyInfo.cs
deleted file mode 100644
index 9d904ba4..00000000
--- a/csharp/tests/Facebook.Yoga.Universal.Tests/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,30 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-[assembly: AssemblyTitle("Facebook.CSSLayout.Universal.Tests")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("BlueJeans")]
-[assembly: AssemblyProduct("Facebook.CSSLayout.Universal.Tests")]
-[assembly: AssemblyCopyright("Copyright © BlueJeans 2016")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-[assembly: AssemblyMetadata("TargetPlatform","UAP")]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-//
-// You can specify all the values or you can default the Build and Revision Numbers
-// by using the '*' as shown below:
-// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
-[assembly: ComVisible(false)]
\ No newline at end of file
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/Properties/UnitTestApp.rd.xml b/csharp/tests/Facebook.Yoga.Universal.Tests/Properties/UnitTestApp.rd.xml
deleted file mode 100644
index efee59d2..00000000
--- a/csharp/tests/Facebook.Yoga.Universal.Tests/Properties/UnitTestApp.rd.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/UnitTestApp.xaml b/csharp/tests/Facebook.Yoga.Universal.Tests/UnitTestApp.xaml
deleted file mode 100644
index 3a7a0486..00000000
--- a/csharp/tests/Facebook.Yoga.Universal.Tests/UnitTestApp.xaml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/UnitTestApp.xaml.cs b/csharp/tests/Facebook.Yoga.Universal.Tests/UnitTestApp.xaml.cs
deleted file mode 100644
index f9a61bda..00000000
--- a/csharp/tests/Facebook.Yoga.Universal.Tests/UnitTestApp.xaml.cs
+++ /dev/null
@@ -1,92 +0,0 @@
-using System;
-using Windows.ApplicationModel;
-using Windows.ApplicationModel.Activation;
-using Windows.UI.Xaml;
-using Windows.UI.Xaml.Controls;
-using Windows.UI.Xaml.Navigation;
-
-namespace Facebook.CSSLayout.Universal.Tests
-{
- ///
- /// Provides application-specific behavior to supplement the default Application class.
- ///
- sealed partial class App : Application
- {
- ///
- /// Initializes the singleton application object. This is the first line of authored code
- /// executed, and as such is the logical equivalent of main() or WinMain().
- ///
- public App()
- {
- this.InitializeComponent();
- this.Suspending += OnSuspending;
- }
-
- ///
- /// Invoked when the application is launched normally by the end user. Other entry points
- /// will be used such as when the application is launched to open a specific file.
- ///
- /// Details about the launch request and process.
- protected override void OnLaunched(LaunchActivatedEventArgs e)
- {
-
-#if DEBUG
- if (System.Diagnostics.Debugger.IsAttached)
- {
- this.DebugSettings.EnableFrameRateCounter = true;
- }
-#endif
-
- var rootFrame = Window.Current.Content as Frame;
-
- // Do not repeat app initialization when the Window already has content,
- // just ensure that the window is active
- if (rootFrame == null)
- {
- // Create a Frame to act as the navigation context and navigate to the first page
- rootFrame = new Frame();
-
- rootFrame.NavigationFailed += OnNavigationFailed;
-
- if (e.PreviousExecutionState == ApplicationExecutionState.Terminated)
- {
- //TODO: Load state from previously suspended application
- }
-
- // Place the frame in the current Window
- Window.Current.Content = rootFrame;
- }
-
- Microsoft.VisualStudio.TestPlatform.TestExecutor.UnitTestClient.CreateDefaultUI();
-
- // Ensure the current window is active
- Window.Current.Activate();
-
- Microsoft.VisualStudio.TestPlatform.TestExecutor.UnitTestClient.Run(e.Arguments);
- }
-
- ///
- /// Invoked when Navigation to a certain page fails
- ///
- /// The Frame which failed navigation
- /// Details about the navigation failure
- void OnNavigationFailed(object sender, NavigationFailedEventArgs e)
- {
- throw new Exception("Failed to load Page " + e.SourcePageType.FullName);
- }
-
- ///
- /// Invoked when application execution is being suspended. Application state is saved
- /// without knowing whether the application will be terminated or resumed with the contents
- /// of memory still intact.
- ///
- /// The source of the suspend request.
- /// Details about the suspend request.
- private void OnSuspending(object sender, SuspendingEventArgs e)
- {
- var deferral = e.SuspendingOperation.GetDeferral();
- //TODO: Save application state and stop any background activity
- deferral.Complete();
- }
- }
-}
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/YogaNodeTest.cs b/csharp/tests/Facebook.Yoga.Universal.Tests/YogaNodeTest.cs
deleted file mode 100644
index 16a6bb16..00000000
--- a/csharp/tests/Facebook.Yoga.Universal.Tests/YogaNodeTest.cs
+++ /dev/null
@@ -1,417 +0,0 @@
-using Facebook.Yoga;
-using Microsoft.VisualStudio.TestPlatform.UnitTestFramework;
-using System;
-
-namespace Facebook.CSSLayout.Universal.Tests
-{
- [TestClass]
- public class YogaNodeTest
- {
- [TestMethod]
- public void TestAddChildGetParent()
- {
- YogaNode parent = new YogaNode();
- YogaNode child = new YogaNode();
-
- Assert.IsNull(child.Parent);
- Assert.AreEqual(0, parent.Count);
-
- parent.Insert(0, child);
-
- Assert.AreEqual(1, parent.Count);
- Assert.AreEqual(child, parent[0]);
- Assert.AreEqual(parent, child.Parent);
-
- parent.RemoveAt(0);
-
- Assert.IsNull(child.Parent);
- Assert.AreEqual(0, parent.Count);
- }
-
- [TestMethod]
- public void TestChildren()
- {
- YogaNode parent = new YogaNode();
- foreach (YogaNode node in parent)
- {
- Assert.Fail(node.ToString());
- }
-
- YogaNode child0 = new YogaNode();
- Assert.AreEqual(-1, parent.IndexOf(child0));
- parent.Insert(0, child0);
- foreach (YogaNode node in parent)
- {
- Assert.AreEqual(0, parent.IndexOf(node));
- }
-
- YogaNode child1 = new YogaNode();
- parent.Insert(1, child1);
- int index = 0;
- foreach (YogaNode node in parent)
- {
- Assert.AreEqual(index++, parent.IndexOf(node));
- }
-
- parent.RemoveAt(0);
- Assert.AreEqual(-1, parent.IndexOf(child0));
- Assert.AreEqual(0, parent.IndexOf(child1));
-
- parent.Clear();
- Assert.AreEqual(0, parent.Count);
-
- parent.Clear();
- Assert.AreEqual(0, parent.Count);
- }
-
- [TestMethod]
- public void TestRemoveAtFromEmpty()
- {
- YogaNode parent = new YogaNode();
-
- try
- {
- parent.RemoveAt(0);
- }
- catch (System.NullReferenceException)
- {
- return;
- }
-
- Assert.Fail("Excepted exception of type 'System.NullReferenceException'.");
- }
-
- [TestMethod]
- public void TestRemoveAtOutOfRange()
- {
- YogaNode parent = new YogaNode();
- YogaNode child = new YogaNode();
- parent.Insert(0, child);
-
- try
- {
- parent.RemoveAt(1);
- }
- catch (System.ArgumentOutOfRangeException)
- {
- return;
- }
-
- Assert.Fail("Excepted exception of type 'System.ArgumentOutOfRangeException'.");
- }
-
- [TestMethod]
- public void TestCannotAddChildToMultipleParents()
- {
- YogaNode parent1 = new YogaNode();
- YogaNode parent2 = new YogaNode();
- YogaNode child = new YogaNode();
-
- parent1.Insert(0, child);
-
- try
- {
- parent2.Insert(0, child);
- }
- catch (System.InvalidOperationException)
- {
- return;
- }
-
- Assert.Fail("Excepted exception of type 'System.InvalidOperationException'.");
- }
-
- [TestMethod]
- public void TestReset()
- {
- int instanceCount = YogaNode.GetInstanceCount();
- YogaNode node = new YogaNode();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
- node.Reset();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
- }
-
- [TestMethod]
- public void TestResetParent()
- {
- YogaNode parent = new YogaNode();
- YogaNode child = new YogaNode();
- parent.Insert(0, child);
-
- try
- {
- parent.Reset();
- }
- catch (System.InvalidOperationException)
- {
- return;
- }
-
- Assert.Fail("Excepted exception of type 'System.InvalidOperationException'.");
- }
-
- [TestMethod]
- public void TestResetChild()
- {
- YogaNode parent = new YogaNode();
- YogaNode child = new YogaNode();
- parent.Insert(0, child);
-
- try
- {
- child.Reset();
- }
- catch (System.InvalidOperationException)
- {
- return;
- }
-
- Assert.Fail("Excepted exception of type 'System.InvalidOperationException'.");
- }
-
- [TestMethod]
- public void TestClear()
- {
- int instanceCount = YogaNode.GetInstanceCount();
- YogaNode parent = new YogaNode();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
- YogaNode child = new YogaNode();
- Assert.AreEqual(instanceCount + 2, YogaNode.GetInstanceCount());
- parent.Insert(0, child);
- Assert.AreEqual(1, parent.Count);
- Assert.AreEqual(parent, child.Parent);
- parent.Clear();
- Assert.AreEqual(0, parent.Count);
- Assert.IsNull(child.Parent);
- Assert.AreEqual(instanceCount + 2, YogaNode.GetInstanceCount());
- }
-
- [TestMethod]
- public void TestMeasureFunc()
- {
- YogaNode node = new YogaNode();
- node.SetMeasureFunction((_, width, widthMode, height, heightMode) => {
- return MeasureOutput.Make(100, 150);
- });
- node.CalculateLayout();
- Assert.AreEqual(100, node.LayoutWidth);
- Assert.AreEqual(150, node.LayoutHeight);
- }
-
- [TestMethod]
- public void TestMeasureFuncWithFloat()
- {
- YogaNode node = new YogaNode();
- node.SetMeasureFunction((_, width, widthMode, height, heightMode) => {
- return MeasureOutput.Make(123.4f, 81.7f);
- });
- node.CalculateLayout();
- Assert.AreEqual(123, node.LayoutWidth);
- Assert.AreEqual(81, node.LayoutHeight);
- }
-
- [TestMethod]
- public void TestChildWithMeasureFunc()
- {
- YogaNode node = new YogaNode();
-
- node.SetMeasureFunction((_, width, widthMode, height, heightMode) => {
- return MeasureOutput.Make(100, 150);
- });
- YogaNode child = new YogaNode();
-
- try
- {
- node.Insert(0, child);
- }
- catch (System.InvalidOperationException)
- {
- return;
- }
-
- Assert.Fail("Excepted exception of type 'System.InvalidOperationException'.");
- }
-
- [TestMethod]
- public void TestMeasureFuncWithChild()
- {
- YogaNode node = new YogaNode();
- YogaNode child = new YogaNode();
- node.Insert(0, child);
-
- try
- {
- node.SetMeasureFunction((_, width, widthMode, height, heightMode) => {
- return MeasureOutput.Make(100, 150);
- });
- }
- catch (System.InvalidOperationException)
- {
- return;
- }
-
- Assert.Fail("Excepted exception of type 'System.InvalidOperationException'.");
- }
-
- [TestMethod]
- public void TestPrint()
- {
- YogaNode parent = new YogaNode();
- parent.Width = 100;
- parent.Height = 120;
- YogaNode child0 = new YogaNode();
- child0.Width = 30;
- child0.Height = 40;
- YogaNode child1 = new YogaNode();
- child1.Width = 35;
- child1.Height = 45;
- parent.Insert(0, child0);
- parent.Insert(0, child1);
- parent.CalculateLayout();
- Assert.AreEqual(parent.Print(), "{layout: {width: 100, height: 120, top: 0, left: 0}, flexDirection: 'column', alignItems: 'stretch', flexGrow: 0, flexShrink: 0, overflow: 'visible', width: 100, height: 120, children: [\n {layout: {width: 35, height: 45, top: 0, left: 0}, flexDirection: 'column', alignItems: 'stretch', flexGrow: 0, flexShrink: 0, overflow: 'visible', width: 35, height: 45, },\n {layout: {width: 30, height: 40, top: 45, left: 0}, flexDirection: 'column', alignItems: 'stretch', flexGrow: 0, flexShrink: 0, overflow: 'visible', width: 30, height: 40, },\n]},\n");
- }
-
- [TestMethod]
- public void TestCopyStyle()
- {
- YogaNode node0 = new YogaNode();
- Assert.IsTrue(YogaConstants.IsUndefined(node0.MaxHeight));
-
- YogaNode node1 = new YogaNode();
- node1.MaxHeight = 100;
-
- node0.CopyStyle(node1);
- Assert.AreEqual(100, node0.MaxHeight);
- }
-
-#if !UNITY_EDITOR
- private void ForceGC()
- {
- GC.Collect(GC.MaxGeneration);
- GC.WaitForPendingFinalizers();
- }
-
- [TestMethod]
- public void TestDestructor()
- {
- ForceGC();
- int instanceCount = YogaNode.GetInstanceCount();
- TestDestructorForGC(instanceCount);
- ForceGC();
- Assert.AreEqual(instanceCount, YogaNode.GetInstanceCount());
- }
-
- private void TestDestructorForGC(int instanceCount)
- {
- YogaNode node = new YogaNode();
- Assert.IsNotNull(node);
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
- node = null;
- }
-
- [TestMethod]
- public void TestDestructorWithChildren()
- {
- ForceGC();
- int instanceCount = YogaNode.GetInstanceCount();
- TestDestructorWithChildrenForGC1(instanceCount);
- ForceGC();
- Assert.AreEqual(instanceCount, YogaNode.GetInstanceCount());
- }
-
- private void TestDestructorWithChildrenForGC1(int instanceCount)
- {
- YogaNode node = new YogaNode();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
-
- TestDestructorWithChildrenForGC2(node, instanceCount + 1);
- ForceGC();
- Assert.AreEqual(instanceCount + 2, YogaNode.GetInstanceCount());
-
- TestDestructorWithChildrenForGC2(node, instanceCount + 2);
- ForceGC();
- Assert.AreEqual(instanceCount + 3, YogaNode.GetInstanceCount());
-
- node = null;
- }
-
- private void TestDestructorWithChildrenForGC2(YogaNode parent, int instanceCount)
- {
- YogaNode child = new YogaNode();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
-
- parent.Insert(0, child);
- child = null;
- }
-
- [TestMethod]
- public void TestParentDestructor()
- {
- ForceGC();
- int instanceCount = YogaNode.GetInstanceCount();
- YogaNode child = new YogaNode();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
-
- TestParentDestructorForGC(child, instanceCount + 1);
- ForceGC();
-
- Assert.IsNull(child.Parent);
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
- }
-
- private void TestParentDestructorForGC(YogaNode child, int instanceCount)
- {
- YogaNode parent = new YogaNode();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
- parent.Insert(0, child);
- }
-
- [TestMethod]
- public void TestClearWithChildDestructor()
- {
- ForceGC();
- int instanceCount = YogaNode.GetInstanceCount();
- YogaNode node = new YogaNode();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
- TestClearWithChildDestructorForGC(node, instanceCount + 1);
- ForceGC();
- Assert.AreEqual(instanceCount + 2, YogaNode.GetInstanceCount());
- node.Clear();
- Assert.AreEqual(0, node.Count);
- ForceGC();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
- }
-
- private void TestClearWithChildDestructorForGC(YogaNode parent, int instanceCount)
- {
- YogaNode child = new YogaNode();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
- parent.Insert(0, child);
- }
-
- [TestMethod]
- public void TestMeasureFuncWithDestructor()
- {
- ForceGC();
- int instanceCount = YogaNode.GetInstanceCount();
- YogaNode parent = new YogaNode();
- Assert.AreEqual(instanceCount + 1, YogaNode.GetInstanceCount());
- TestMeasureFuncWithDestructorForGC(parent);
- ForceGC();
- Assert.AreEqual(instanceCount + 2, YogaNode.GetInstanceCount());
- parent.CalculateLayout();
- Assert.AreEqual(120, (int)parent.LayoutWidth);
- Assert.AreEqual(130, (int)parent.LayoutHeight);
- }
-
- private void TestMeasureFuncWithDestructorForGC(YogaNode parent)
- {
- YogaNode child = new YogaNode();
- parent.Insert(0, child);
- child.SetMeasureFunction((_, width, widthMode, height, heightMode) => {
- return MeasureOutput.Make(120, 130);
- });
- }
-#endif
- }
-}
\ No newline at end of file
diff --git a/csharp/tests/Facebook.Yoga.Universal.Tests/project.json b/csharp/tests/Facebook.Yoga.Universal.Tests/project.json
deleted file mode 100644
index 32d92747..00000000
--- a/csharp/tests/Facebook.Yoga.Universal.Tests/project.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "dependencies": {
- "Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2"
- },
- "frameworks": {
- "uap10.0": {}
- },
- "runtimes": {
- "win10-arm": {},
- "win10-arm-aot": {},
- "win10-x86": {},
- "win10-x86-aot": {},
- "win10-x64": {},
- "win10-x64-aot": {}
- }
-}
\ No newline at end of file