public async Task Test()
        {
            var serviceCollection = new ServiceCollection();

            new GenericUserInterfaceBagBuilder(serviceCollection)
            .AddDataProviderForSelectList <SomeDataProviderForSelectList>()
            .AddDefaultDefinition <SomeTypeInterfaceOverrider>()
            .Build();

            var bag = serviceCollection
                      .BuildServiceProvider()
                      .GetRequiredService <GenericUserInterfaceBag>();

            var interfaceModel = await bag.GetDefaultInterface <SomeType>();

            var fBlock = interfaceModel.Interface.Blocks.First();

            Assert.AreEqual(UserInterfaceType.MultipleDropDownList, fBlock.InterfaceType);
            Assert.AreEqual(typeof(SomeDataProviderForSelectList).FullName, fBlock.DropDownData.DataProviderTypeFullName);

            var expectedData = SomeDataProviderForSelectList.Data
                               .Select(GenericUserInterfaceModelBuilderMappings.ToSelectListItem)
                               .ToList();

            TestsHelper.AssertAreEqualViaJson(expectedData, fBlock.DropDownData.SelectList);
        }
예제 #2
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);
        }