public void TestOnNullWithMapping()
        {
            var elem = new SelectListItemData <string>
            {
                Value = null,
                Text  = "text"
            };

            var data = GenericUserInterfaceModelBuilderMappings.ToSelectListItem(elem);

            Assert.AreEqual(elem.Text, data.Text);
        }
Beispiel #2
0
        /// <summary>
        /// Установить выпадающий список со множественным выбором для свойства объекта
        /// </summary>
        /// <param name="selectListItems"></param>
        /// <returns></returns>
        public GenericUserInterfaceBlockBuilderForCollectionType <TItem> SetMultipleDropDownList(List <SelectListItemData <TItem> > selectListItems)
        {
            if (selectListItems is null)
            {
                throw new ArgumentNullException(nameof(selectListItems));
            }

            ValidateForMultipleDropDownList();

            Block.InterfaceType = UserInterfaceType.MultipleDropDownList;
            Block.DropDownData  = new DropDownListData
            {
                SelectList    = GenericUserInterfaceModelBuilderMappings.ToSelectListItems(selectListItems),
                CanAddNewItem = false
            };

            return(this);
        }
Beispiel #3
0
        public void Test()
        {
            var builder = new GenericUserInterfaceModelBuilder <SomeClass>(TestsHelper.CreateDefaultBag());

            var list = new List <SelectListItemData <bool?> >
            {
                new SelectListItemData <bool?>
                {
                    Selected = true,
                    Text     = "Text",
                }
            };

            builder.GetBlockBuilder(x => x.Sex).SetDropDownList(list);

            var lastProp = builder.Result.Interface.Blocks.Last();

            Assert.IsTrue(lastProp.InterfaceType == UserInterfaceType.DropDownList);
            TestsHelper.AssertAreEqualViaJson(GenericUserInterfaceModelBuilderMappings.ToSelectListItems(list), lastProp.DropDownData.SelectList);
        }
Beispiel #4
0
        public void SelectListItems()
        {
            var tInt = new SelectListItemData <int>
            {
                Text  = "SomeText",
                Value = 2
            };

            var mappedAsInt = GenericUserInterfaceModelBuilderMappings.ToSelectListItem(tInt);

            Assert.AreEqual(tInt.Value.ToString(), mappedAsInt.Value);

            var tStr = new SelectListItemData <string>
            {
                Text  = "dsafa",
                Value = "dasa"
            };

            var mappedAsStr = GenericUserInterfaceModelBuilderMappings.ToSelectListItem(tStr);

            Assert.AreEqual(tStr.Value.ToString(), mappedAsStr.Value);
        }
Beispiel #5
0
        /// <summary>
        /// Установить блок, как выпадающий список со статическими данными
        /// </summary>
        /// <param name="selectListItems"></param>
        /// <returns></returns>
        public GenericUserInterfaceBlockBuilder <TProp> SetDropDownList(List <SelectListItemData <TProp> > selectListItems)
        {
            if (selectListItems is null)
            {
                throw new ArgumentNullException(nameof(selectListItems));
            }
            var countOfSelected = selectListItems.Count(x => x.Selected);

            if (countOfSelected != 1)
            {
                throw new InvalidOperationException($"Необходимо чтобы в выпадающем списке было 1 выбранное значение. У вас их {countOfSelected}");
            }

            DropDownListChecks();

            Block.InterfaceType = UserInterfaceType.DropDownList;
            Block.DropDownData  = new DropDownListData
            {
                SelectList    = GenericUserInterfaceModelBuilderMappings.ToSelectListItems(selectListItems),
                CanAddNewItem = false
            };
            return(this);
        }