diff --git a/app/Umbraco/Archetype.Tests/Serialization/Enumerable/ArchetypeJsonConverterTest.cs b/app/Umbraco/Archetype.Tests/Serialization/Enumerable/ArchetypeJsonConverterTest.cs index 063bb09..ef58a89 100644 --- a/app/Umbraco/Archetype.Tests/Serialization/Enumerable/ArchetypeJsonConverterTest.cs +++ b/app/Umbraco/Archetype.Tests/Serialization/Enumerable/ArchetypeJsonConverterTest.cs @@ -10,19 +10,16 @@ namespace Archetype.Tests.Serialization.Enumerable [TestFixture] public class ArchetypeJsonConverterTest : ArchetypeJsonConverterTestBase { - private Feedback _feedback; + private Feedbacks _feedbacks; [SetUp] public void SetUp() { - _feedback = new Feedback + _feedbacks = new Feedbacks { - Testimonials = new List - { - "Testimonial 1", - "Testimonial 2", - "Testimonial 3" - } + new Feedback{Testimonial = "Testimonial 1"}, + new Feedback{Testimonial = "Testimonial 2"}, + new Feedback{Testimonial = "Testimonial 3"} }; } @@ -30,7 +27,7 @@ namespace Archetype.Tests.Serialization.Enumerable public void Convert_FeedbackModel_To_Archetype() { var converter = new ArchetypeValueConverter(); - var json = JsonConvert.SerializeObject(_feedback); + var json = JsonConvert.SerializeObject(_feedbacks); var archetype = (Umbraco.Models.Archetype)converter.ConvertDataToSource(null, json, false); Assert.NotNull(archetype); @@ -39,21 +36,21 @@ namespace Archetype.Tests.Serialization.Enumerable [Test] public void Convert_FeedbackModel_To_ArchetypeJson() { - var json = ConvertModelToArchetype(_feedback); + var json = ConvertModelToArchetypeJson(_feedbacks, Formatting.Indented); Assert.AreEqual(JsonTestStrings._FEEDBACK_JSON, json); } [Test] public void Convert_ArchetypeJson_To_FeedbackModel() { - var result = ConvertArchetypeJsonToModel(JsonTestStrings._FEEDBACK_JSON); + var result = ConvertArchetypeJsonToModel(JsonTestStrings._FEEDBACK_JSON); Assert.NotNull(result); } [Test] public void Convert_FeedbackModel_To_Archetype_AndBack() { - var result = ConvertModelToArchetypeAndBack(_feedback); + var result = ConvertModelToArchetypeAndBack(_feedbacks); Assert.NotNull(result); } } diff --git a/app/Umbraco/Archetype.Tests/Serialization/Enumerable/JsonTestModels.cs b/app/Umbraco/Archetype.Tests/Serialization/Enumerable/JsonTestModels.cs index ba5c117..20c64ea 100644 --- a/app/Umbraco/Archetype.Tests/Serialization/Enumerable/JsonTestModels.cs +++ b/app/Umbraco/Archetype.Tests/Serialization/Enumerable/JsonTestModels.cs @@ -1,13 +1,28 @@ using System; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; using Archetype.Umbraco.Serialization; using Newtonsoft.Json; namespace Archetype.Tests.Serialization.Enumerable -{ +{ + #region Feedback - a simple list based model + + [AsArchetype("feedback")] + [JsonConverter(typeof(ArchetypeJsonConverter))] + public class Feedbacks : List + { + } + + [AsArchetype("feedback")] + [JsonConverter(typeof(ArchetypeJsonConverter))] + public class Feedback + { + [JsonProperty("testimonial")] + public String Testimonial { get; set; } + } + + #endregion + [AsArchetype("aboutUs")] [JsonConverter(typeof(ArchetypeJsonConverter))] public class AboutUs @@ -19,13 +34,4 @@ namespace Archetype.Tests.Serialization.Enumerable [JsonProperty("testimonials")] public IEnumerable Testimonials { get; set; } } - - [AsArchetype("feedback")] - [JsonConverter(typeof(ArchetypeJsonConverter))] - public class Feedback - { - [AsFieldset] - [JsonProperty("testimonials")] - public IEnumerable Testimonials { get; set; } - } } diff --git a/app/Umbraco/Archetype.Tests/Serialization/Enumerable/JsonTestStrings.cs b/app/Umbraco/Archetype.Tests/Serialization/Enumerable/JsonTestStrings.cs index 1edc638..0329886 100644 --- a/app/Umbraco/Archetype.Tests/Serialization/Enumerable/JsonTestStrings.cs +++ b/app/Umbraco/Archetype.Tests/Serialization/Enumerable/JsonTestStrings.cs @@ -207,40 +207,30 @@ @"{ ""fieldsets"": [ { + ""alias"": ""feedback"", + ""properties"": [ { - ""alias"": ""feedback"", - ""value"": { - ""fieldsets"": [ - { - ""alias"": ""testimonials"", - ""properties"": [ - { - ""alias"": ""String"", - ""value"": ""Testimonial 1"" - } - ] - }, - { - ""alias"": ""testimonials"", - ""properties"": [ - { - ""alias"": ""String"", - ""value"": ""Testimonial 2"" - } - ] - }, - { - ""alias"": ""testimonials"", - ""properties"": [ - { - ""alias"": ""String"", - ""value"": ""Testimonial 3"" - } - ] - } - ] - } - } + ""alias"": ""testimonial"", + ""value"": ""Testimonial 1"" + } + ] + }, + { + ""alias"": ""feedback"", + ""properties"": [ + { + ""alias"": ""testimonial"", + ""value"": ""Testimonial 2"" + } + ] + }, + { + ""alias"": ""feedback"", + ""properties"": [ + { + ""alias"": ""testimonial"", + ""value"": ""Testimonial 3"" + } ] } ]