public void GivenNullOrEmptyStringWithSelectManyAttribute_WhenGet_ThenReturnsCorrectValue(string selectManyValue)
        {
            var page = new DefaultStringPropertyHandlerPage
            {
                SelectMany = selectManyValue
            };

            var result = (List <SelectOption>) this._sut.GetValue(page,
                                                                  page.GetType().GetProperty(nameof(DefaultStringPropertyHandlerPage.SelectOne)));

            result.Count(x => x.Selected).ShouldBe(0);
        }
        public void GivenStringProperty_WhenGetValue_ThenReturnsCorrectValue(string heading)
        {
            var page = new DefaultStringPropertyHandlerPage
            {
                Heading = heading
            };

            var result = this._sut.GetValue(page,
                                            page.GetType().GetProperty(nameof(DefaultStringPropertyHandlerPage.Heading)));

            ((string)result).ShouldBe(heading);
        }
        public void GivenStringPropertyWithSelectOneAttribute_WhenGetValue_ThenReturnsCorrectValue()
        {
            var page = new DefaultStringPropertyHandlerPage
            {
                SelectOne = "option3"
            };

            var result = (List <SelectOption>) this._sut.GetValue(page,
                                                                  page.GetType().GetProperty(nameof(DefaultStringPropertyHandlerPage.SelectOne)));

            result.ShouldContain(x => x.Selected && x.Value.Equals("option3") && x.Text.Equals("Option 3"));
            result.Count(x => x.Selected).ShouldBe(1);
        }