From ca376995792d2e2a1a7f39760989496702a8f603 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Wed, 6 Dec 2017 11:21:42 -0800 Subject: Fix handling of long values and baseUri in path fields --- src/test/WixToolsetTest.Data/SerializeFixture.cs | 43 ++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 src/test/WixToolsetTest.Data/SerializeFixture.cs (limited to 'src/test') diff --git a/src/test/WixToolsetTest.Data/SerializeFixture.cs b/src/test/WixToolsetTest.Data/SerializeFixture.cs new file mode 100644 index 00000000..9883053f --- /dev/null +++ b/src/test/WixToolsetTest.Data/SerializeFixture.cs @@ -0,0 +1,43 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. + +namespace WixToolsetTest.Data +{ + using System; + using System.IO; + using System.Linq; + using WixToolset.Data; + using WixToolset.Data.Tuples; + using Xunit; + + public class SerializeFixture + { + [Fact] + public void CanSaveAndLoadIntermediate() + { + var sln = new SourceLineNumber("test.wxs", 1); + + var section = new IntermediateSection("test", SectionType.Product, 65001); + + section.Tuples.Add(new ComponentTuple(sln, new Identifier("TestComponent", AccessModifier.Public)) + { + ComponentId = new Guid(1, 0, 0, new byte[8]).ToString("B"), + Directory_ = "TestFolder", + Attributes = 2, + }); + + var intermediate = new Intermediate("TestIntermediate", new[] { section }, null, null); + + var path = Path.GetTempFileName(); + intermediate.Save(path); + + var loaded = Intermediate.Load(path); + + var tuple = (ComponentTuple)loaded.Sections.Single().Tuples.Single(); + + Assert.Equal("TestComponent", tuple.Id.Id); + Assert.Equal(AccessModifier.Public, tuple.Id.Access); + Assert.Equal("TestFolder", tuple.Directory_); + Assert.Equal(2, tuple.Attributes); + } + } +} -- cgit v1.2.3-55-g6feb