public void AddChildTag_adds_it() { var entityUnderTest = new DreamMainTag("Friend"); entityUnderTest.AddChildTag(new DreamChildTag("John")); entityUnderTest.ChildTags.Should().ContainSingle(x => x.Tag == "John"); }
public void AddChildTag_same_twice_is_not_added() { var entityUnderTest = new DreamMainTag("Friend"); entityUnderTest.AddChildTag(new DreamChildTag("John")); entityUnderTest.AddChildTag(new DreamChildTag("john")); entityUnderTest.ChildTags.Should().ContainSingle(x => x.Tag == "John"); }
public void ToString_one_element_with_children_as_correct_string() { var dreamMainTag = new DreamMainTag("Beach"); dreamMainTag.ChildTags.Add(new DreamChildTag("Valencia")); dreamMainTag.ChildTags.Add(new DreamChildTag("Gandia")); var entityUnderTest = new DreamTagStringBuilder(new List <DreamMainTag> { dreamMainTag }); entityUnderTest.ToString().Should().Be("Beach (Valencia, Gandia)"); }
public void TagsToAdd_with_initial_tags_sets_them() { var dreamMainTag = new DreamMainTag("Friend"); dreamMainTag.AddChildTag(new DreamChildTag("Pepe")); dreamMainTag.AddChildTag(new DreamChildTag("Kenobi")); var entityUnderTest = InitializeViewModelForTest(new List <DreamMainTag> { dreamMainTag, new DreamMainTag("Beach") }); entityUnderTest.TagsToAdd.Should().Be("Friend (Pepe, Kenobi), Beach"); }
private static string FormatTag(DreamMainTag tag) { var sb = new StringBuilder(tag.Tag); if (!tag.ChildTags.Any()) { return(sb.ToString()); } sb.Append(" ").Append(DreamTagTokens.OpenChildTags); sb.Append(string.Join(Separator, tag.ChildTags.Select(x => x.Tag))); sb.Append(DreamTagTokens.CloseChildTags); return(sb.ToString()); }
public void Reset_with_initial_tags_sets_them_and_removes_any_others() { var dreamMainTag = new DreamMainTag("Friend"); dreamMainTag.AddChildTag(new DreamChildTag("Pepe")); dreamMainTag.AddChildTag(new DreamChildTag("Kenobi")); var entityUnderTest = InitializeViewModelForTest(new List <DreamMainTag> { dreamMainTag, new DreamMainTag("Beach") }); entityUnderTest.TagsToAdd.Should().Be("Friend (Pepe, Kenobi), Beach"); entityUnderTest.AddTag(GetChildTag("Plagueis", "Friend")); entityUnderTest.AddTag(GetMainTag("Car")); entityUnderTest.TagsToAdd.Should().Be("Friend (Pepe, Kenobi, Plagueis), Beach, Car"); entityUnderTest.Reset(); entityUnderTest.TagsToAdd.Should().Be("Friend (Pepe, Kenobi), Beach"); }
public void ToString_three_elements_with_children_as_correct_string() { var dreamMainTag1 = new DreamMainTag("Beach"); dreamMainTag1.ChildTags.Add(new DreamChildTag("Valencia")); dreamMainTag1.ChildTags.Add(new DreamChildTag("Gandia")); var dreamMainTag2 = new DreamMainTag("Friends"); dreamMainTag2.ChildTags.Add(new DreamChildTag("John")); var entityUnderTest = new DreamTagStringBuilder(new List <DreamMainTag> { dreamMainTag1, new DreamMainTag("Mountain"), dreamMainTag2 }); entityUnderTest.ToString().Should().Be("Beach (Valencia, Gandia), Mountain, Friends (John)"); }
private void ParseTags() { foreach (var tag in _mainTags) { var mainTag = ExtractMainTag(tag); if (string.IsNullOrWhiteSpace(mainTag)) { continue; } var newTag = new DreamMainTag(mainTag); if (HasChildren(tag)) { foreach (var childTag in ExtractChildTags(tag)) { newTag.AddChildTag(new DreamChildTag(childTag)); } } DreamTags.Add(newTag); } }
public void Constructor_null_passed_becomes_empty_string() { var entityUnderTest = new DreamMainTag(null); entityUnderTest.Tag.Should().BeEmpty(); }