Example #1
0
        public void ParseStringToDreamTags_single_tag_with_children_returned_correctly()
        {
            var result = DreamTagParser.ParseStringToDreamTags("Movies (Die Hard, Heat)").Single();

            result.Tag.Should().Be("Movies");
            result.ChildTags.Should().ContainSingle(x => x.Tag == "Die Hard").And.ContainSingle(x => x.Tag == "Heat");
        }
Example #2
0
        public void ParseStringToDreamTags_two_tags_with_children_returned_correctly()
        {
            var result = DreamTagParser.ParseStringToDreamTags("Movies (Die Hard, Heat), Beach");

            result.Should().ContainSingle(x => x.Tag == "Movies" && x.ChildTags.Count == 2);
            result.Should().ContainSingle(x => x.Tag == "Beach" && x.ChildTags.Count == 0);
        }
Example #3
0
        public void ParseStringToDreamTags_single_tag_returned()
        {
            var result = DreamTagParser.ParseStringToDreamTags("Movies").Single();

            result.Tag.Should().Be("Movies");
            result.ChildTags.Should().BeEmpty();
        }
Example #4
0
        public void ParseStringToDreamTags_single_tag_with_non_closed_parenthesis_omits_last_child()
        {
            var result = DreamTagParser.ParseStringToDreamTags("Movies (Die Hard, Heat").Single();

            result.Tag.Should().Be("Movies");
            result.ChildTags.Should()
            .HaveCount(2,
                       "If we cannot find the closing parenthesis just take everything").And
            .ContainSingle(x => x.Tag == "Die Hard").And.ContainSingle(x => x.Tag == "Heat");
        }
Example #5
0
        public TagWizardViewModel([NotNull] IEnumerable <DreamMainTag> originalTags,
                                  IEnumerable <TagStatistic> allTagStatistics)
        {
            _allTagStatistics = allTagStatistics;
            var dreamMainTags = originalTags.ToList();

            _originalTags = DreamTagParser.TagsToString(dreamMainTags);
            _tagsToAdd.AddRange(dreamMainTags);
            _searcher  = new DreamTagSearch(_allTagStatistics);
            TagsToShow = SetTagsToShow(_searcher.AllTags);
        }
Example #6
0
        private void AddTagButton_Click(object sender, EventArgs e)
        {
            var tagWizardViewModel = new TagWizardViewModel(DreamTagParser.ParseStringToDreamTags(_viewModel.Tags),
                                                            _tagStatistics);
            var wizard = new FrmTagWizard(tagWizardViewModel);
            var result = wizard.ShowDialog();

            if (result == DialogResult.OK)
            {
                _viewModel.Tags = tagWizardViewModel.TagsToAdd;
            }
        }
Example #7
0
        public void ParseStringToDreamTags_one_tag_is_empty_only_parenthesis_is_ignored()
        {
            var result = DreamTagParser.ParseStringToDreamTags("(Die Hard), Beach");

            result.Single().Tag.Should().Be("Beach");
        }
Example #8
0
        public void ParseStringToDreamTags_null_string_results_in_ArgumentNullException()
        {
            Action act = () => DreamTagParser.ParseStringToDreamTags(null);

            act.Should().ThrowExactly <ArgumentNullException>();
        }
Example #9
0
 public void ParseStringToDreamTags_empty_string_returns_empty_tags()
 {
     DreamTagParser.ParseStringToDreamTags("").Should().BeEmpty();
 }