コード例 #1
0
        public void MapPriceTest07()
        {
            // Arrange
            var product = new ProductItem
            {
                VatRate     = 1.25m,
                PriceListId = null,
                Price       = 100
            };

            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            stormContext.Stub(x => x.ShowPricesIncVat).Return(false);
            StormContext.SetInstance(stormContext);

            // Act
            var result = MockBuilderBase.MapPrice(product);

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(1.25m, result.VatRate);
            Assert.AreEqual(0, result.PricelistId);
            Assert.AreEqual(100, result.Display);
            Assert.AreEqual(100, result.Catalog);
            Assert.AreEqual(100, result.Recommended);
        }
コード例 #2
0
        public void BuildProductModelTest02()
        {
            // Arrange
            var rules   = MockRepository.GenerateMock <ISiteRules>();
            var product = new Product
            {
                Id           = 1,
                Name         = "MockProduct",
                Manufacturer = new ProductManufacturer {
                    Id = 1, Name = "MockManufacturer"
                },
                CategoryId   = null,
                CategoryName = "MockCategory"
            };

            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            stormContext.Stub(x => x.ShowPricesIncVat).Return(false);
            StormContext.SetInstance(stormContext);

            var dictionary = MockRepository.GenerateMock <IApplicationDictionary>();

            // Act
            var productBuilder = new ProductBuilder(dictionary, rules);
            var result         = productBuilder.BuildProductModel(product);

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual("MockProduct", result.Name);
            Assert.AreEqual("MockManufacturer", result.Manufacturer.Name);
            Assert.AreEqual("MockCategory", result.Category.Name);
        }
コード例 #3
0
        public void MapProductWithFilesTest()
        {
            // Arrange
            var product = new Product
            {
                Files = new ProductFileList
                {
                    new ProductFile {
                        Description = "Desc1", Name = "Name1", Id = 11, Key = Guid.NewGuid(), Path = "file1.jpg", Type = (int)FileType.Jpg
                    },
                    new ProductFile {
                        Description = "Desc2", Name = "Name2", Id = 46, Key = Guid.NewGuid(), Path = "file2.mp4", Type = (int)ExternalFileType.Mp4
                    },
                    new ProductFile {
                        Description = "Desc3", Name = "Name3", Id = 47, Key = Guid.NewGuid(), Path = "file3.eps", Type = (int)ExternalFileType.Eps
                    }
                },
            };

            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            StormContext.SetInstance(stormContext);
            // Act

            var model = Mapper.Map <Product, ProductModel>(product);

            // Assert
            Assert.IsNotNull(model);
            Assert.AreEqual(3, model.Files.Count);
            Assert.IsTrue(model.Files[0].Url.EndsWith("jpg"), "jpg");
            Assert.IsTrue(model.Files[1].Url.EndsWith("mp4"), "mp4");
            Assert.IsTrue(model.Files[2].Url.EndsWith("eps"), "eps");
        }
コード例 #4
0
        public void GetRolesForUserTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var customer    = CreateDefaultCustomer();

            customer.Account.Authorizations.Add(new IdValue {
                Id = 1, Value = "NormalUser"
            });
            var repository = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);
            repository.Stub(x => x.GetCustomerByEmail("*****@*****.**")).IgnoreArguments().Return(customer);

            var httpContextWrapper = CreateEmptyHttpContextMock();
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            var provider = new StormRoleProvider(repository);

            // Act
            var roles = provider.GetRolesForUser("*****@*****.**");

            // Assert
            Assert.AreEqual(1, roles.Length);
            Assert.AreEqual("NormalUser", roles[0]);
        }
コード例 #5
0
        public void BuildProductListProductWithNoAdditionalImageWhenVariantSpecificTest()
        {
            // Arrange
            var rules       = MockRepository.GenerateMock <ISiteRules>();
            var productList = new ProductItemPagedList
            {
                ItemCount = 1,
                Items     = new ProductItemList
                {
                    new ProductItem {
                        ImageKey = Guid.NewGuid(), VariantImageKey = Guid.NewGuid(), AdditionalImageKeySeed = "58:11111111-e238-476d-9886-9f2193539d2a"
                    },
                    new ProductItem {
                        ImageKey = Guid.NewGuid(), VariantImageKey = Guid.NewGuid(), AdditionalImageKeySeed = "58:22222222-e238-476d-9886-9f2193539d2a"
                    },
                }
            };

            var dictionary = MockRepository.GenerateMock <IApplicationDictionary>();

            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            stormContext.Stub(x => x.ShowPricesIncVat).Return(false);
            StormContext.SetInstance(stormContext);

            // Act
            var productBuilder = new ProductListBuilder(dictionary, rules);
            var result         = productBuilder.BuildProductList(productList);

            // Assert
            Assert.AreEqual(1, result.Items[0].Files.Count);
            Assert.AreEqual(2, result.Items[0].Variants[0].Files.Count);
            Assert.AreEqual(2, result.Items[0].Variants[1].Files.Count);
        }
コード例 #6
0
        public void ProcessRequestWithoutBasketTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();

            var repository = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);

            var httpContextWrapper = CreateEmptyHttpContextMock();
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            var handler = new PaynovaCallbackHandler(repository);
            var request = new HttpContext(
                new HttpRequest("", application.Url, ""),
                new HttpResponse(new StringWriter()));

            // Act
            handler.ProcessRequest(request);

            // Assert
            repository.AssertWasNotCalled(x => x.GetBasket(1), o => o.IgnoreArguments());
        }
コード例 #7
0
        public void SaveCookieTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var repository  = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);

            var httpContextWrapper = CreateEmptyHttpContextMock();

            httpContextWrapper.RequestCookies.Add(new HttpCookie("StormSession")
            {
                Value = null
            });
            httpContextWrapper.RequestCookies.Add(new HttpCookie("StormPersisted")
            {
                Value = null
            });
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            // Act
            StormContext.LoadCookie();
            StormContext.BasketId   = 1;
            StormContext.CustomerId = 123456;
            StormContext.LoginName  = "*****@*****.**";
            StormContext.SaveCookie();

            // Assert
            Assert.AreEqual("[email protected]&AccountId=!null!&CustomerId=123456&CompanyId=!null!&DivisionId=!null!&BasketId=1&CurrencyId=1&CultureCode=sv-SE&SalesAreaId=1&ShowPricesIncVat=!null!&IsPrivate=True&ReferId=!null!&RememberMe=True", httpContextWrapper.ResponseCookies["StormPersisted"].Value);
        }
コード例 #8
0
        public void LoadCookieEmptyCookieTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var repository  = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);

            var httpContextWrapper = CreateEmptyHttpContextMock();

            httpContextWrapper.RequestCookies.Add(new HttpCookie("StormSession")
            {
                Value = null
            });
            httpContextWrapper.RequestCookies.Add(new HttpCookie("StormPersisted")
            {
                Value = null
            });
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            // Act
            StormContext.LoadCookie();

            // Assert
            Assert.AreEqual("sv-SE", StormContext.CultureCode);
            Assert.AreEqual(1, StormContext.CurrencyId);
            Assert.AreEqual(1, StormContext.SalesAreaId);
        }
コード例 #9
0
        public void LoadCookieInvalidCookieWithRefreshTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var repository  = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);

            var httpContextWrapper = CreateEmptyHttpContextMock();

            httpContextWrapper.RequestCookies.Add(new HttpCookie("StormSession")
            {
                Value = null
            });
            httpContextWrapper.RequestCookies.Add(new HttpCookie("StormPersisted")
            {
                Value = "LoginName=!null!&AccountId=!null!&CustomerId=!null!&CompanyId=!null!&DivisionId=!null!&BasketId=!null!&CurrencyId=5&CultureCode=da-DK&SalesAreaId=3&ShowPricesIncVat=!null!&IsPrivate=True&ReferId=!null!&ReferUrl=!null!&RememberMe=True"
            });
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            // Act
            StormContext.LoadCookie();

            // Assert
            Assert.AreEqual("sv-SE", StormContext.CultureCode);
            Assert.AreEqual(1, StormContext.CurrencyId);
            Assert.AreEqual(1, StormContext.SalesAreaId);
        }
コード例 #10
0
        public void GetUserNameByEmail1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var customer    = CreateDefaultCustomer();

            customer.Account.Authorizations.Add(new IdValue {
                Id = 1, Value = "NormalUser"
            });
            var repository = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);
            repository.Stub(x => x.GetCustomerByEmail("*****@*****.**")).IgnoreArguments().Return(customer);

            var httpContextWrapper = CreateEmptyHttpContextMock();
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            var provider = new StormMembershipProvider(repository);

            InitializeProvider(provider);

            // Act
            var name = provider.GetUserNameByEmail("*****@*****.**");

            // Assert
            Assert.AreEqual("*****@*****.**", name);
        }
コード例 #11
0
        public void LogoutUserTest2()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var customer    = CreateDefaultCustomer();
            var basket      = new Basket {
                Id = 1,
            };

            var repository = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);
            repository.Stub(x => x.GetCustomerByLoginName("*****@*****.**")).IgnoreArguments().Return(customer);
            repository.Stub(x => x.GetBasket(1)).IgnoreArguments().Return(basket);

            var httpContextWrapper = CreateEmptyHttpContextMock();
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);
            StormContext.BasketId = 1;

            // Act
            StormContext.LoginUser("*****@*****.**");
            Assert.IsNotNull(StormContext.LoginName);
            StormContext.LogoutUser();

            // Assert
            repository.AssertWasCalled(x => x.UpdateBuyer(basket.Id.GetValueOrDefault(1), customer), o => o.IgnoreArguments());
            Assert.IsNull(StormContext.LoginName);
            Assert.IsNull(StormContext.AccountId);
            Assert.IsNull(StormContext.CompanyId);
            Assert.IsNull(StormContext.CustomerId);
        }
コード例 #12
0
        public void ProcessValidRequestWithFailedResponseTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var customer    = CreateDefaultCustomer();
            var basket      = new Basket {
                Id = 1,
            };

            var repository = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);
            repository.Stub(x => x.GetCustomerByEmail("*****@*****.**")).IgnoreArguments().Return(customer);
            repository.Stub(x => x.GetBasket(1)).IgnoreArguments().Return(basket);
            repository.Stub(x => x.PaymentCallback2(null)).IgnoreArguments().Return(new PaymentResponse {
                Status = "FAIL", StatusDescription = "This was NOT OK."
            });

            var httpContextWrapper = CreateEmptyHttpContextMock();
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);
            StormContext.BasketId = 1;

            var handler = new PaynovaCallbackHandler(repository);
            var request = new HttpContext(
                new HttpRequest("", application.Url, ""),
                new HttpResponse(new StringWriter()));

            // Act
            handler.ProcessRequest(request);

            // Assert
            repository.AssertWasCalled(x => x.PaymentCancel(null), o => o.IgnoreArguments());
        }
コード例 #13
0
        public void LoginUserTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var customer    = CreateDefaultCustomer();

            var repository = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);
            repository.Stub(x => x.GetCustomerByLoginName("*****@*****.**")).IgnoreArguments().Return(customer);

            var httpContextWrapper = CreateEmptyHttpContextMock();

            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            // Act
            StormContext.LoginUser("*****@*****.**");

            // Assert
            Assert.AreEqual("*****@*****.**", StormContext.LoginName);
            Assert.AreEqual(1, StormContext.CustomerId);
            Assert.AreEqual(2, StormContext.AccountId);
        }
コード例 #14
0
        public void InitializeTest()
        {
            var stormUtilsRepo = new Mock <Enferno.Web.StormUtils.InternalRepository.IRepository>();

            var application = new Application
            {
                Currencies = new Currencies {
                    Default = new Currency {
                        Id = 2
                    }
                },
                Cultures = new Cultures {
                    Default = new Culture {
                        Code = "sv-SE"
                    }
                },
                SalesAreas = new SalesAreas {
                    Default = new SalesArea {
                        Id = 1
                    }
                },
            };

            var httpContextWrapper = new NoHttpContext(application);
            var ctx = new StormContext(stormUtilsRepo.Object, httpContextWrapper);

            StormContext.SetInstance(ctx);
        }
コード例 #15
0
        public void BuildProductListProductWithOneVariantsImageTest()
        {
            // Arrange
            var rules       = MockRepository.GenerateMock <ISiteRules>();
            var productList = new ProductItemPagedList
            {
                ItemCount = 1,
                Items     = new ProductItemList
                {
                    new ProductItem
                    {
                        ImageKey        = Guid.NewGuid(),
                        VariantImageKey = Guid.NewGuid()
                    }
                }
            };

            var dictionary = MockRepository.GenerateMock <IApplicationDictionary>();

            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            stormContext.Stub(x => x.ShowPricesIncVat).Return(false);
            StormContext.SetInstance(stormContext);

            // Act
            var productBuilder = new ProductListBuilder(dictionary, rules);
            var result         = productBuilder.BuildProductList(productList);

            // Assert
            Assert.AreEqual(1, result.Items[0].Files.Count);
            Assert.AreEqual(1, result.Items[0].Variants[0].Files.Count);
        }
コード例 #16
0
        public void CreateNoHttpStormContextTest()
        {
            // Arrange
            var application = new Application
            {
                Currencies = new Currencies {
                    Default = new Currency {
                        Id = 2
                    }
                },
                Cultures = new Cultures {
                    Default = new Culture {
                        Code = "da-DK"
                    }
                },
                SalesAreas = new SalesAreas {
                    Default = new SalesArea {
                        Id = 1
                    }
                },
            };

            var httpContextWrapper = new NoHttpContext(application);
            var ctx = new StormContext(new Repository(), httpContextWrapper);

            StormContext.SetInstance(ctx);

            // Act
            StormContext.ShowPricesIncVat = true;

            // Assert
            Assert.AreEqual(true, StormContext.ShowPricesIncVat);
        }
コード例 #17
0
        public void BuildProductList03Test()
        {
            // Arrange
            var rules       = MockRepository.GenerateMock <ISiteRules>();
            var productList = new ProductItemPagedList
            {
                ItemCount = 1,
                Items     = new ProductItemList
                {
                    new ProductItem
                    {
                        Manufacturer = new ProductManufacturer {
                            Id = 1, Name = "MockManufacturer"
                        }
                    }
                }
            };

            var dictionary = MockRepository.GenerateMock <IApplicationDictionary>();

            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            stormContext.Stub(x => x.ShowPricesIncVat).Return(false);
            StormContext.SetInstance(stormContext);

            // Act
            var productBuilder = new ProductListBuilder(dictionary, rules);
            var result         = productBuilder.BuildProductList(productList);

            // Assert
            Assert.AreEqual(0, result.Filters.Count);
            Assert.AreEqual(1, result.ItemCount);
            Assert.AreEqual("MockManufacturer", result.Items[0].Manufacturer.Name);
        }
コード例 #18
0
        public void ValidateUserTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var customer    = CreateDefaultCustomer();

            customer.Account.Authorizations.Add(new IdValue {
                Id = 1, Value = "NormalUser"
            });
            var repository = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);
            repository.Stub(x => x.GetCustomerByEmail("*****@*****.**")).IgnoreArguments().Return(customer);
            repository.Stub(x => x.Login("*****@*****.**", "abc")).IgnoreArguments().Return(customer);

            var httpContextWrapper = CreateEmptyHttpContextMock();
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            var provider = new StormMembershipProvider(repository);

            // Act
            var success = provider.ValidateUser("*****@*****.**", "abc");

            // Assert
            Assert.IsTrue(success);
        }
コード例 #19
0
        public void CreateUserWhenUserExistsTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var customer    = CreateDefaultCustomer();

            customer.Account.Authorizations.Add(new IdValue {
                Id = 1, Value = "NormalUser"
            });
            var repository = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);
            repository.Stub(x => x.GetCustomerByLoginName("*****@*****.**")).IgnoreArguments().Return(customer);

            var httpContextWrapper = CreateEmptyHttpContextMock();
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            var provider = new StormMembershipProvider(repository);

            InitializeProvider(provider);

            // Act
            MembershipCreateStatus status;

            provider.CreateUser("*****@*****.**", "abc", "*****@*****.**", "question", "answer", true, null, out status);

            // Assert
            Assert.AreEqual(MembershipCreateStatus.DuplicateUserName, status);
        }
コード例 #20
0
        public void LoadAndSaveWithBasketIdCookieTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var repository  = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);

            var httpContextWrapper = CreateRealHttpContextMock();

            httpContextWrapper.RequestCookies.Add(new HttpCookie("StormSession")
            {
                Value = null
            });
            httpContextWrapper.RequestCookies.Add(new HttpCookie("StormPersisted")
            {
                Value = null
            });
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            // Act
            StormContext.LoadCookie();
            StormContext.BasketId = 4711;
            StormContext.SaveCookie();
            StormContext.LoadCookie();

            // Assert
            Assert.AreEqual(4711, StormContext.BasketId);
        }
コード例 #21
0
        public void Init()
        {
            IoC.RegisterType <ISiteRules, TestSiteRules>();

            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            stormContext.Stub(x => x.ShowPricesIncVat).Return(true);
            stormContext.Stub(x => x.CultureCode).Return("sv");
            StormContext.SetInstance(stormContext);
        }
コード例 #22
0
        public void GetLoginNameTest()
        {
            // Arrange
            var ctx = MockRepository.GenerateMock <IStormContext>();

            ctx.Stub(x => x.LoginName).Return("*****@*****.**");

            StormContext.SetInstance(ctx);

            // Assert
            Assert.AreEqual("*****@*****.**", StormContext.LoginName);
        }
コード例 #23
0
        public void EncryptCookieTrueTest()
        {
            //Arrange
            var ctx = MockRepository.GenerateMock <IStormContext>();
            var cfg = MockRepository.GenerateMock <IStormConfigurationSection>();

            cfg.Stub(x => x.EncryptCookie).Return(true);
            ctx.Stub(x => x.Configuration).Return(cfg);

            StormContext.SetInstance(ctx);

            // Assert
            Assert.IsTrue(StormContext.Configuration.EncryptCookie);
        }
コード例 #24
0
        public void GetCookieTest()
        {
            // Arrange
            var ctx = MockRepository.GenerateMock <IStormContext>();

            ctx.Stub(x => x.GetCookie("jalle")).IgnoreArguments().Return(new HttpCookie("jalle"));

            StormContext.SetInstance(ctx);

            // Act
            var cookie = StormContext.GetCookie("jalle");

            // Assert
            Assert.AreEqual("jalle", cookie.Name);
        }
コード例 #25
0
        public void CanGetProductFromId()
        {
            // Arrange
            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            stormContext.Stub(x => x.ShowPricesIncVat).Return(false);
            stormContext.Stub(x => x.CultureCode).Return("sv");
            StormContext.SetInstance(stormContext);

            var productsRepository = MockRepository.GenerateMock <IProductRepository>();

            productsRepository.Stub(x => x.ListParametricInfo()).IgnoreArguments()
            .Return(
                new ParametricInfoList
            {
                new ParametricInfo {
                    Id = 111, Type = ParametricType.ListValue, ValueType = ParametricValueType.Integer
                }
            }
                );

            productsRepository.Stub(x => x.ListParametricValues()).IgnoreArguments()
            .Return(
                new ParametricValueList
            {
                new ParametricValue {
                    Id = 37, Name = "Valuee", Description = "Desc", Code = "Coode", SortOrder = 1, Type = ParametricType.ListValue.ToString()
                }
            }
                );

            var repository = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.Products).Return(productsRepository);

            IoC.Container.RegisterInstance(typeof(IRepository), "IRepository", repository, new SingletonLifetimeManager());
            ApplicationDictionary.Instance.Refresh();

            var productViewModel = productManager.GetProduct(product.Id);

            Assert.IsNotNull(productViewModel);
            Assert.AreEqual(product.PriceListId, productViewModel.PriceListId);
            Assert.AreEqual(product.Price, productViewModel.DisplayPrice);
        }
コード例 #26
0
        public void BuildFiltersWhenListHasMixedWithCountEqualsItemCountTest()
        {
            // Arrange
            var rules = MockRepository.GenerateMock <ISiteRules>();

            var filterList = new FilterList
            {
                new Filter {
                    Name = "flgf", Items = new FilterItemList
                    {
                        new FilterItem {
                            Code = "Flag0", Count = 0, Id = "3", Value = "0"
                        },
                        new FilterItem {
                            Code = "Flag1", Count = 1, Id = "3", Value = "1"
                        },
                        new FilterItem {
                            Code = "Flag2", Count = 2, Id = "3", Value = "2"
                        }
                    }
                },
            };

            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            stormContext.Stub(x => x.ShowPricesIncVat).Return(true);
            stormContext.Stub(x => x.CultureCode).Return("sv");
            StormContext.SetInstance(stormContext);

            var applicationDictionary = MockRepository.GenerateMock <IApplicationDictionary>();

            // Act
            var filterBuilder = new FilterBuilder(applicationDictionary, rules);

            filterBuilder.ItemCount = 2;
            var result = filterBuilder.BuildFilters(filterList).ToList();

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(1, result.Count);
            Assert.AreEqual(1, result[0].Values.Count);
        }
コード例 #27
0
        public void RoleExistsTest()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var repository  = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);

            var httpContextWrapper = CreateEmptyHttpContextMock();
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            var provider = new StormRoleProvider(repository);

            // Act
            var roleExists = provider.RoleExists("DefaultAuthorization");

            // Assert
            Assert.IsTrue(roleExists);
        }
コード例 #28
0
        public void MapProductItemWithSameFileInAdditionalImagesTest()
        {
            // Arrange
            var productItem = new ProductItem
            {
                ImageKey = new Guid("87be8515-9227-4b9e-b975-a2cb21f6a26e"),
                AdditionalImageKeySeed = "44:9014C5A7-1BEF-45E9-A259-8B121C440E0E,58:87be8515-9227-4b9e-b975-a2cb21f6a26e"
            };

            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            StormContext.SetInstance(stormContext);
            // Act

            var model = Mapper.Map <ProductItem, ProductItemModel>(productItem);

            // Assert
            Assert.IsNotNull(model);
            Assert.AreEqual(3, model.Files.Count);
        }
コード例 #29
0
        public void GetAllRolesTest1()
        {
            // Arrange
            var application = CreateDefaultApplication();
            var repository  = MockRepository.GenerateMock <IRepository>();

            repository.Stub(x => x.GetApplication()).IgnoreArguments().Return(application);

            var httpContextWrapper = CreateEmptyHttpContextMock();
            var ctx = new StormContext(repository, httpContextWrapper);

            StormContext.SetInstance(ctx);

            var provider = new StormRoleProvider(repository);

            // Act
            var roles = provider.GetAllRoles();

            // Assert
            Assert.AreEqual(1, roles.Length);
            Assert.AreEqual("DefaultAuthorization", roles[0]);
        }
コード例 #30
0
        public void BuildProductListWithSomeClosedItemsAndPrice()
        {
            // Arrange
            var rules       = MockRepository.GenerateMock <ISiteRules>();
            var productList = new ProductItemPagedList
            {
                ItemCount = 1,
                Items     = new ProductItemList
                {
                    new ProductItem {
                        Id = 1, PartNo = "1", GroupByKey = "1", Price = 1, PriceListId = 1, StatusId = 1
                    },
                    new ProductItem {
                        Id = 2, PartNo = "2", GroupByKey = "1", Price = 0, PriceListId = null, StatusId = 5
                    },
                }
            };

            var dictionary = MockRepository.GenerateMock <IApplicationDictionary>();

            var stormContext = MockRepository.GenerateMock <IStormContext>();

            stormContext.Stub(x => x.Configuration).Return(new StormConfigurationSection());
            stormContext.Stub(x => x.ShowPricesIncVat).Return(false);
            StormContext.SetInstance(stormContext);

            // Act
            var productBuilder = new ProductListBuilder(dictionary, rules);
            var result         = productBuilder.BuildProductList(productList);

            // Assert
            Assert.AreEqual(1, result.ItemCount);
            var product = result.Items[0];

            Assert.AreEqual(1, product.Price.Display);
            Assert.AreEqual(false, product.Price.IsFromPrice);
        }