diff --git a/src/15below.Deployment.ReportingServices/Properties/AssemblyInfo.cs b/src/15below.Deployment.ReportingServices/Properties/AssemblyInfo.cs index 7b6b7c74..97bfd492 100644 --- a/src/15below.Deployment.ReportingServices/Properties/AssemblyInfo.cs +++ b/src/15below.Deployment.ReportingServices/Properties/AssemblyInfo.cs @@ -30,7 +30,7 @@ // // 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.2.0")] -[assembly: AssemblyVersion("1.0.2.0")] -[assembly: AssemblyFileVersion("1.0.2.0")] +// [assembly: AssemblyVersion("1.0.3.0")] +[assembly: AssemblyVersion("1.0.3.0")] +[assembly: AssemblyFileVersion("1.0.3.0")] [assembly: AssemblyInformationalVersion("1.0.0-feature-Ma-local")] diff --git a/src/15below.Deployment.Update.Tests/Properties/AssemblyInfo.cs b/src/15below.Deployment.Update.Tests/Properties/AssemblyInfo.cs index 9cd96295..69ed2d63 100644 --- a/src/15below.Deployment.Update.Tests/Properties/AssemblyInfo.cs +++ b/src/15below.Deployment.Update.Tests/Properties/AssemblyInfo.cs @@ -30,7 +30,7 @@ // // 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.2.0")] -[assembly: AssemblyVersion("1.0.2.0")] -[assembly: AssemblyFileVersion("1.0.2.0")] +// [assembly: AssemblyVersion("1.0.3.0")] +[assembly: AssemblyVersion("1.0.3.0")] +[assembly: AssemblyFileVersion("1.0.3.0")] [assembly: AssemblyInformationalVersion("1.0.0-feature-Ma-local")] diff --git a/src/15below.Deployment.Update.Tests/TagDictionaryTestFiles/webservice-structure.xml b/src/15below.Deployment.Update.Tests/TagDictionaryTestFiles/webservice-structure.xml index 2d9ab6c3..f6045a80 100644 --- a/src/15below.Deployment.Update.Tests/TagDictionaryTestFiles/webservice-structure.xml +++ b/src/15below.Deployment.Update.Tests/TagDictionaryTestFiles/webservice-structure.xml @@ -34,6 +34,38 @@ idvalue + + + + + ABC123 + + + + + + 321CBA + + + + + 999 + + + + + + + + 888 + + + + FlatGroup-0 + + + FlatGroup-1 + diff --git a/src/15below.Deployment.Update.Tests/TagDictionaryTests.cs b/src/15below.Deployment.Update.Tests/TagDictionaryTests.cs index c9f9b265..c7c3bb52 100644 --- a/src/15below.Deployment.Update.Tests/TagDictionaryTests.cs +++ b/src/15below.Deployment.Update.Tests/TagDictionaryTests.cs @@ -1,9 +1,9 @@ -using System; +using NUnit.Framework; +using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading; -using NUnit.Framework; namespace FifteenBelow.Deployment.Update.Tests { @@ -232,6 +232,13 @@ public void LoadLabelledGroups() Assert.IsTrue(sut.ContainsKey("GDS")); } + [Test] + public void LoadFlatLabelledGroups() + { + var sut = new TagDictionary("ident", XmlData); + Assert.IsTrue(sut.ContainsKey("FlatGroup")); + } + [Test] public void LoadLabelledGroupsValuesAndNormalIdentityValuesAvailable() { @@ -275,7 +282,7 @@ public void OctopusVariablesConvertedToFriendlyTagNames(string key, string value var sut = new TagDictionary("ident", new Dictionary { { TagSource.Environment, "" }, { TagSource.XmlData, XmlData } }); Assert.AreEqual(value, sut[friendlyKey]); } - + [Test] public void UseAnInvalidProperty_Throws() { @@ -433,5 +440,38 @@ public void EnsureThatXmlIncludesWork_AndArriveRenderered() var sut = new TagDictionary("ident", new Dictionary { { TagSource.XmlData, XmlData } }); Assert.AreEqual(xml.Value.RenderTemplate(sut), "{% include \"webservice-structure.xml\" %}".RenderTemplate(sut)); } + + [Test] + public void DualLabeledGroupWorks() + { + var sut = new TagDictionary("ident", new Dictionary { { TagSource.XmlData, XmlData } }); + Assert.AreEqual("ABC123", "{{ Label1.0.Value }}".RenderTemplate(sut)); + Assert.AreEqual("ABC123", "{{ Label2.0.Value }}".RenderTemplate(sut)); + Assert.AreEqual("321CBA", "{{ Label1.1.Value }}".RenderTemplate(sut)); + Assert.Throws(() => "{{ Label2.1.Value }}".RenderTemplate(sut)); + } + + [Test] + public void FlatLabelGroupsHaveValues() + { + var sut = new TagDictionary("ident", new Dictionary { { TagSource.XmlData, XmlData } }); + Assert.AreEqual("FlatGroup-0", "{{ FlatGroup.0.Value }}".RenderTemplate(sut)); + Assert.AreEqual("FlatGroup-1", "{{ FlatGroup.1.Value }}".RenderTemplate(sut)); + } + + [Test] + public void LabelNodeWithoutProperties() + { + var sut = new TagDictionary("ident", new Dictionary { { TagSource.XmlData, XmlData } }); + Assert.AreEqual("999", "{{ Label3.0.Value }}".RenderTemplate(sut)); + } + + [Test] + public void DualLabeledGroupWithContainerNodeWorks() + { + var sut = new TagDictionary("ident", new Dictionary { { TagSource.XmlData, XmlData } }); + Assert.AreEqual("888", "{{ LabelGrouped1.0.Value }}".RenderTemplate(sut)); + Assert.AreEqual("888", "{{ LabelGrouped2.0.Value }}".RenderTemplate(sut)); + } } } \ No newline at end of file diff --git a/src/15below.Deployment.Update/15below.Deployment.Update.csproj b/src/15below.Deployment.Update/15below.Deployment.Update.csproj index 35559921..1f6eec67 100644 --- a/src/15below.Deployment.Update/15below.Deployment.Update.csproj +++ b/src/15below.Deployment.Update/15below.Deployment.Update.csproj @@ -74,6 +74,11 @@ Designer + + + Designer + +