コード例 #1
0
        public async void GetAllCashAccountsWithDetailsReturnsEnumerableOfCashAccounts()
        {
            using (var db = new ItsomContext(CtxOpt))
            {
                db.Database.EnsureCreated();

                ICashAccountDataService service = new CashAccountDataService(db);

                db.CashAccounts.Add(Cashact);

                var save = db.SaveChanges();
                var some = new QueryCondition <CashAccount>();
                some.QueryIncludes.Add(c => c.Incomes);
                some.QueryIncludes.Add(c => c.Expenses);
                some.QueryOrderBy.Add(c => c.CreatedDate);

                var result = await service.GetAllCashAccountsWithDetails(some);

                CashAccountModel account;
                using (var single = result.GetEnumerator())
                {
                    single.MoveNext();
                    account = single.Current;
                }

                var another = some;
                Assert.NotNull(result);
                Assert.Single(result);
                Assert.IsType <CashAccountModel>(account);
            }
        }
コード例 #2
0
        public async void GetWithParameterFiltersAndReturnsExactlyOneCashAccount()
        {
            Cashact = new Faker <CashAccount>()
                      .RuleFor(c => c.Incomes, Income)
                      .RuleFor(c => c.Expenses, Expense)
                      .RuleFor(c => c.AccountBalance, x => x.Random.Decimal(3m, 2430m))
                      .RuleFor(c => c.AccountName, "Abel Rosnovski")
                      .RuleFor(c => c.IsActivated, true)
                      .RuleFor(i => i.CashAccountId, x => x.Random.Guid())
                      .RuleFor(c => c.CreatedDate, DateTimeOffset.UtcNow)
                      .Generate();
            var Cashact1 = new Faker <CashAccount>()
                           .RuleFor(c => c.Incomes, Income)
                           .RuleFor(c => c.Expenses, Expense)
                           .RuleFor(c => c.AccountBalance, x => x.Random.Decimal(3m, 2430m))
                           .RuleFor(c => c.AccountName, "Yakubu Shloniq")
                           .RuleFor(c => c.IsActivated, true)
                           .RuleFor(i => i.CashAccountId, x => x.Random.Guid())
                           .RuleFor(c => c.CreatedDate, DateTimeOffset.UtcNow)
                           .Generate();

            using (var db = new ItsomContext(CtxOpt))
            {
                db.Database.EnsureCreated();

                db.CashAccounts.Add(Cashact);
                db.CashAccounts.Add(Cashact1);
                db.SaveChanges();

                ICashAccountDataService repo = new CashAccountDataService(db);

                var controller = new CashAccountsController(repo, Conditions, db);

                var result = await controller.Get("Abel Rosnovski");

                Assert.NotNull(result);
                var viewResult = Assert.IsType <OkObjectResult>(result);
                Assert.Equal(200, viewResult.StatusCode);
                var acct = viewResult.Value as CashAccountDetailModel;

                Assert.Equal("Abel Rosnovski", acct.AccountName);
            }
        }
コード例 #3
0
        public async void GetReturnsActionResultWithCashAccountEnumerable()
        {
            using (var db = new ItsomContext(CtxOpt))
            {
                db.Database.EnsureCreated();

                db.CashAccounts.Add(Cashact);

                db.SaveChanges();

                ICashAccountDataService repo = new CashAccountDataService(db);

                var controller = new CashAccountsController(repo, Conditions, db);

                //Act
                var result = await controller.Get();

                //Assert
                var viewResult = Assert.IsType <OkObjectResult>(result);
                Assert.Equal(200, viewResult.StatusCode);
                Assert.IsAssignableFrom <IEnumerable <CashAccountModel> >((IEnumerable <CashAccountModel>)viewResult.Value);
            }
        }
コード例 #4
0
        public async void GetByAsyncReturnsSingleCashAccountWithDetails()
        {
            using (var db = new ItsomContext(CtxOpt))
            {
                db.Database.EnsureCreated();

                ICashAccountDataService service = new CashAccountDataService(db);

                Cashact.AccountName = "Someone Somewhere";

                db.CashAccounts.Add(Cashact);

                var save = db.SaveChanges();
                var some = new QueryCondition <CashAccount>();
                some.QueryIncludes.Add(c => c.Incomes);
                some.QueryIncludes.Add(c => c.Expenses);
                some.QueryOrderBy.Add(c => c.CreatedDate);
                some.QueryPredicates.Add(c => c.AccountName.Contains("Someone"));
                var result = await service.GetByAsync(some);

                Assert.NotNull(result);
                Assert.IsType <CashAccountDetailModel>(result);
            }
        }