protected void Application_Start() { Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-us"); AreaRegistration.RegisterAllAreas(); WebApiConfig.Register(GlobalConfiguration.Configuration); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); //Initialize your application WebSettingsConfig.Instance.SetDeferredSettings(webSettingsConfig => { ISalesSettings salesSettings = webSettingsConfig.GetSalesSettings(SectionId.VisualDictionary); if (salesSettings == null) { return; } long languageId = WebSettingsConfig.Instance.GetLanguageFromId(); var representationsQuery = new RepresentationsQuery(languageId); List <SalesItemForUser> allSalesItems = representationsQuery.GetForSales(WebSettingsConfig.Instance.DefaultUserLanguages, salesSettings); var salesCalculator = new SalesCalculator(allSalesItems, allSalesItems, salesSettings.Discount); salesSettings.SummDiscountPrice = salesCalculator.SummDiscountPrice; }, webSettingsConfig => { //кладем в кэш файл sitemap.xml SitemapFileGenerator.Generate(false); }, webSettingsConfig => { //подчистить старые файлы js/css Minimizer.DeleteOldFiles(webSettingsConfig.WebPath); }); }
public SelectableSalesModel(string tableHeader, SalesCalculator salesCalculator, string uniqueDownloadId) { TableHeader = tableHeader; AllItems = salesCalculator.AllItems; SelectedItems = salesCalculator.SelectedItems; HasDiscount = salesCalculator.HasDiscount; Discount = salesCalculator.Discount; SummPrice = salesCalculator.SummPrice; SummDiscountPrice = salesCalculator.SummDiscountPrice; SelectedDiscountPrice = salesCalculator.SelectedDiscountPrice; UniqueDownloadId = uniqueDownloadId; }
public void CalculateSubTotal_ReturnsSumOfProductPrices() { ShoppingCart TestData = new ShoppingCart(); TestData.AddItem(new Product("Beans", "Beans", 4.99m), 1); TestData.AddItem(new Product("Beans", "Beans", 44.67m), 1); TestData.AddItem(new Product("Beans", "Beans", 13.29m), 1); TestData.AddItem(new Product("Beans", "Beans", 712.93m), 1); TestData.AddItem(new Product("Beans", "Beans", .23m), 1); decimal expected = 776.11m; decimal result = SalesCalculator.CalculateSubtotal(TestData); Assert.Equal(result, expected); }
public static void TestNoNegativeSales() { SalesCalculator calculator = new SalesCalculator(); for (int i = 0; i < 1000; i++) { calculator.Quality = Random.Range(0f, 1f); calculator.PriceOfProduct = Random.Range(0f, 100f); calculator.PriceInvested = Random.Range(0f, 100000f); calculator.MagnitudeOfQuality = Random.Range(0f, 10f); int day = Random.Range(0, 100); float result = calculator.CopiesSoldByDayX(day); Debug.Assert(result >= 0, "Calculor calculated negative sales for " + calculator.ToString() + " at day " + day + " Value: " + result); if (result < 0) { return; } } }
public static void TestNoSalesOnCrazyPrice() { SalesCalculator calculator = new SalesCalculator(); calculator.PriceOfProduct = 10000; float totalSold = 0; for (int i = 0; i < 50; i++) { calculator.Quality = Random.Range(0f, 1f); calculator.PriceInvested = Random.Range(0, 100000); calculator.MagnitudeOfQuality = Random.Range(0f, 1f); for (int d = 0; d < 100; d++) { var copiesSold = calculator.CopiesSoldByDayX(d); totalSold += Mathf.Max(0, copiesSold); } } Debug.Assert(totalSold == 0, "Test Failed, sold more then 0 copies -> " + totalSold); }
public void CalculateGrandTotal_ReturnsTotalWithSalesTax(decimal input, decimal expectation) { decimal result = SalesCalculator.CalculateGrandTotal(input); Assert.Equal(result, expectation); }