コード例 #1
0
 public void AddProductConfigurationRows()
 {
     var model = new ConfigurationModel();
     var flavorNameA = "TestFlavor";
     var flavorNameB = "TestFlavor2";
     var productA = "ProductA";
     var productB = "ProductB";
     model.Flavors = new List<ConfigurationModel.FlavorOptions>
     {
         new ConfigurationModel.FlavorOptions
         {
             FlavorName = flavorNameA, IncludedProductTitles = new List<string> { productA }
         },
         new ConfigurationModel.FlavorOptions
         {
             FlavorName = flavorNameB, IncludedProductTitles = new List<string> { productB }
         }
     };
     var product = new ConfigurationModel.Product {Title = productB};
     model.Products = new List<ConfigurationModel.Product>
     {
         new ConfigurationModel.Product {Title = productA},
         product
     };
     var controller = new ConfigurationController(model);
     var testView = new ConfigViewForTests();
     controller.PopulateWithModelSettings(testView);
     TestThatViewHasProduct(testView, model.Products[0]);
     TestThatViewHasProduct(testView, model.Products[1]);
     TestThatProductIsSelectedForTheseFlavors(testView, model.Products[0], new List<string> { flavorNameA });
     TestThatProductIsSelectedForTheseFlavors(testView, model.Products[1], new List<string> { flavorNameB });
 }
コード例 #2
0
        public void AddProductConfigurationRows()
        {
            var model       = new ConfigurationModel();
            var flavorNameA = "TestFlavor";
            var flavorNameB = "TestFlavor2";
            var productA    = "ProductA";
            var productB    = "ProductB";

            model.Flavors = new List <ConfigurationModel.FlavorOptions>
            {
                new ConfigurationModel.FlavorOptions
                {
                    FlavorName = flavorNameA, IncludedProductTitles = new List <string> {
                        productA
                    }
                },
                new ConfigurationModel.FlavorOptions
                {
                    FlavorName = flavorNameB, IncludedProductTitles = new List <string> {
                        productB
                    }
                }
            };
            var product = new ConfigurationModel.Product {
                Title = productB
            };

            model.Products = new List <ConfigurationModel.Product>
            {
                new ConfigurationModel.Product {
                    Title = productA
                },
                product
            };
            var controller = new ConfigurationController(model);
            var testView   = new ConfigViewForTests();

            controller.PopulateWithModelSettings(testView);
            TestThatViewHasProduct(testView, model.Products[0]);
            TestThatViewHasProduct(testView, model.Products[1]);
            TestThatProductIsSelectedForTheseFlavors(testView, model.Products[0], new List <string> {
                flavorNameA
            });
            TestThatProductIsSelectedForTheseFlavors(testView, model.Products[1], new List <string> {
                flavorNameB
            });
        }
コード例 #3
0
 private void TestThatViewHasProduct(ConfigViewForTests testView, ConfigurationModel.Product product)
 {
     CollectionAssert.Contains(testView.productNames, product.Title);
 }
コード例 #4
0
 private void TestThatProductIsSelectedForTheseFlavors(ConfigViewForTests testView, ConfigurationModel.Product product, List <string> list)
 {
     CollectionAssert.AreEquivalent(testView.enabledFlavorsForProduct[product.Title], list);
 }