public void ItBuildsReportForSpecialCategoriesSpecialLevel() { Debug.WriteLine(string.Format("Test: {0}", nameof(ItBuildsReportForSpecialCategoriesSpecialLevel))); // get report settings var reportSettingsService = new ReportSettingService(App.Db); var reportSettings = reportSettingsService.GetForUser(user.Id); // create categories of different levels var categoryLvl0 = App.Factory.Create <Category>(_ => _.UserId = user.Id); var categoryLvl1 = App.Factory.Create <Category>(c => { c.UserId = user.Id; c.ParentCategoryId = categoryLvl0.Id; }); var categoryLvl2_1 = App.Factory.Create <Category>(c => { c.UserId = user.Id; c.ParentCategoryId = categoryLvl1.Id; }); var categoryLvl2_2 = App.Factory.Create <Category>(c => { c.UserId = user.Id; c.ParentCategoryId = categoryLvl1.Id; }); reportSettings.CategoryIds.Add(categoryLvl1.Id); reportSettings.CategoryIds.Add(categoryLvl2_1.Id); reportSettings.AllCategories = false; reportSettings.CategoryLevel = 1; // build report and check BuildAndCheckReport(reportSettings, _ => _.CategoryId = categoryLvl2_1.Id, _ => _.CategoryId = categoryLvl2_2.Id); }
public void ItBuildsReportForAllCategoriesAllLevels() { Debug.WriteLine(string.Format("Test: {0}", nameof(ItBuildsReportForAllCategoriesAllLevels))); // get report settings var reportSettingsService = new ReportSettingService(App.Db); var reportSettings = reportSettingsService.GetForUser(user.Id); reportSettings.AllCategories = true; reportSettings.CategoryLevel = -1; // build report and check BuildAndCheckReport(reportSettings); }
public void ItBuildsReportForSpecialCategoriesAllLevels() { Debug.WriteLine(string.Format("Test: {0}", nameof(ItBuildsReportForSpecialCategoriesAllLevels))); // get report settings var reportSettingsService = new ReportSettingService(App.Db); var reportSettings = reportSettingsService.GetForUser(user.Id); // create different categories var category1 = App.Factory.Create <Category>(_ => _.UserId = user.Id); var category2 = App.Factory.Create <Category>(_ => _.UserId = user.Id); var category3 = App.Factory.Create <Category>(_ => _.UserId = user.Id); reportSettings.CategoryIds.Add(category1.Id); reportSettings.CategoryIds.Add(category2.Id); reportSettings.AllCategories = false; reportSettings.CategoryLevel = -1; // build report and check BuildAndCheckReport(reportSettings, _ => _.CategoryId = category2.Id, _ => _.CategoryId = category3.Id); }
public void ItBuildsReportWithCurrencyExchangeRate() { Debug.WriteLine(string.Format("Test: {0}", nameof(ItBuildsReportWithCurrencyExchangeRate))); // get report settings var reportSettingsService = new ReportSettingService(App.Db); var reportSettings = reportSettingsService.GetForUser(user.Id); // get main currency var currencyService = new CurrencyService(App.Db); var mainCurrency = currencyService.GetMain(user.Id); // create currency exchange rate var currency = App.Factory.Create <Currency>(item => item.UserId = user.Id); var storageGroup = App.Factory.Create <StorageGroup>(item => item.UserId = user.Id); var storage = App.Factory.Create <Storage>(item => { item.UserId = user.Id; item.CurrencyId = currency.Id; item.StorageGroupId = storageGroup.Id; }); var currencyExchangeRate = App.Factory.Create <CurrencyExchangeRate>(item => { item.CurrencyFromId = currency.Id; item.CurrencyToId = mainCurrency.Id; }); reportSettings.AllCategories = true; reportSettings.CategoryLevel = -1; // build report and check BuildAndCheckReport(reportSettings, record => { record.CurrencyId = currency.Id; record.StorageId = storage.Id; }); }