Beispiel #1
0
        public void ViewBalance_Balance_Exists_In_Db()
        {
            accountbalance accountBalanceDAL = new accountbalance();

            accountBalanceDAL.year      = 2016;
            accountBalanceDAL.month     = 1;
            accountBalanceDAL.rnd       = 10000.00;
            accountBalanceDAL.canteen   = 150000.25;
            accountBalanceDAL.ceocar    = 2500.36;
            accountBalanceDAL.marketing = 69354.25;
            accountBalanceDAL.parking   = 25369.25;

            AccountBalance expected = new AccountBalance();

            expected.year      = 2016;
            expected.month     = 1;
            expected.rnd       = 10000.00;
            expected.canteen   = 150000.25;
            expected.ceocar    = 2500.36;
            expected.marketing = 69354.25;
            expected.parking   = 25369.25;

            var mockAccountBalanceRepo = new Mock <IAccountBalanceRepo>();

            mockAccountBalanceRepo.Setup(x => x.ViewBalance(It.IsAny <int>(), It.IsAny <int>())).Returns(accountBalanceDAL);
            AccountBalanceService accountBalanceService = new AccountBalanceService(mockAccountBalanceRepo.Object);


            AccountBalance actual = accountBalanceService.ViewBalance(2016, 1);

            AssertObjects.PropertyValuesAreEquals(actual, expected);
        }
        public accountbalance ViewCurrentBalance()
        {
            // get the last row of the accountbalance table
            accountbalance maximum = DbContext.accountbalances.OrderByDescending(o => o.year).ThenByDescending(o => o.month).FirstOrDefault();

            return(maximum);
        }
Beispiel #3
0
        public void ViewCurrentBalance_Balance_Exists_In_Db()
        {
            string accountType = "canteen";

            accountbalance accountBalanceDAL = new accountbalance();

            accountBalanceDAL.year      = 2016;
            accountBalanceDAL.month     = 1;
            accountBalanceDAL.rnd       = 10000.00;
            accountBalanceDAL.canteen   = 150000.25;
            accountBalanceDAL.ceocar    = 2500.36;
            accountBalanceDAL.marketing = 69354.25;
            accountBalanceDAL.parking   = 25369.25;

            double[] expected = new double[] { 0, 150000.25 };


            var mockAccountBalanceRepo = new Mock <IAccountBalanceRepo>();

            mockAccountBalanceRepo.Setup(x => x.ViewCurrentBalance()).Returns(accountBalanceDAL);
            AccountBalanceService accountBalanceService = new AccountBalanceService(mockAccountBalanceRepo.Object);


            double[] actual = accountBalanceService.ViewCurrentBalance(accountType);

            Assert.AreEqual(expected, actual);
        }
Beispiel #4
0
        public void UploadBalance_Balance_Not_In_Db()
        {
            accountbalance accountBalanceDAL = new accountbalance();

            accountBalanceDAL.year      = 2016;
            accountBalanceDAL.month     = 1;
            accountBalanceDAL.rnd       = 10000.00;
            accountBalanceDAL.canteen   = 150000.25;
            accountBalanceDAL.ceocar    = 2500.36;
            accountBalanceDAL.marketing = 69354.25;
            accountBalanceDAL.parking   = 25369.25;

            AccountBalance accountBalanceBAL = new AccountBalance();

            accountBalanceBAL.year      = 2016;
            accountBalanceBAL.month     = 1;
            accountBalanceBAL.rnd       = 10000.00;
            accountBalanceBAL.canteen   = 150000.25;
            accountBalanceBAL.ceocar    = 2500.36;
            accountBalanceBAL.marketing = 69354.25;
            accountBalanceBAL.parking   = 25369.25;

            string expected = "uploaded succesfully";

            Mock <IAccountBalanceRepo> mockAccountBalanceRepo = new Mock <IAccountBalanceRepo>();

            mockAccountBalanceRepo.Setup(x => x.ViewBalance(It.IsAny <int>(), It.IsAny <int>())).Returns((accountbalance)null);
            mockAccountBalanceRepo.Setup(x => x.UploadBalance(It.IsAny <accountbalance>())).Returns("uploaded succesfully");

            AccountBalanceService accountBalanceService = new AccountBalanceService(mockAccountBalanceRepo.Object);
            string status = accountBalanceService.UploadBalance(accountBalanceBAL);

            Assert.AreEqual(status, expected);
        }
Beispiel #5
0
        public void UploadBalance_Balance_Already_In_Db()
        {
            accountbalance accountBalanceDAL = new accountbalance();

            accountBalanceDAL.year      = 2016;
            accountBalanceDAL.month     = 1;
            accountBalanceDAL.rnd       = 10000.00;
            accountBalanceDAL.canteen   = 150000.25;
            accountBalanceDAL.ceocar    = 2500.36;
            accountBalanceDAL.marketing = 69354.25;
            accountBalanceDAL.parking   = 25369.25;

            AccountBalance accountBalanceBAL = new AccountBalance();

            accountBalanceBAL.year      = 2016;
            accountBalanceBAL.month     = 1;
            accountBalanceBAL.rnd       = 10000.00;
            accountBalanceBAL.canteen   = 150000.25;
            accountBalanceBAL.ceocar    = 2500.36;
            accountBalanceBAL.marketing = 69354.25;
            accountBalanceBAL.parking   = 25369.25;

            string expected = "Balances of this month already exsists in the database";
            Mock <IAccountBalanceRepo> mockAccountBalanceRepo = new Mock <IAccountBalanceRepo>();

            mockAccountBalanceRepo.Setup(x => x.ViewBalance(It.IsAny <int>(), It.IsAny <int>())).Returns(accountBalanceDAL);

            AccountBalanceService accountBalanceService = new AccountBalanceService(mockAccountBalanceRepo.Object);
            string status = accountBalanceService.UploadBalance(accountBalanceBAL);

            Assert.AreEqual(status, expected);
        }
        // upload balance
        public string UploadBalance(AccountBalance accountBalance)
        {
            string uploadStatus = "";

            // creating a object for DAL and set values
            accountbalance accountBalanceDAL = new accountbalance();

            accountBalanceDAL.year      = accountBalance.year;
            accountBalanceDAL.month     = accountBalance.month;
            accountBalanceDAL.rnd       = accountBalance.rnd;
            accountBalanceDAL.canteen   = accountBalance.canteen;
            accountBalanceDAL.ceocar    = accountBalance.ceocar;
            accountBalanceDAL.marketing = accountBalance.marketing;
            accountBalanceDAL.parking   = accountBalance.parking;
            accountBalanceDAL.uid       = accountBalance.uid;

            // to check if balance is already in the database
            AccountBalance existingRecord = ViewBalance(accountBalance.year, accountBalance.month);

            // if balances exsists
            if (existingRecord != null)
            {
                uploadStatus = "Balances of this month already exsists in the database";
            }
            else
            {
                // if balances doesn't exists call repository method to upload
                uploadStatus = _AccountBalanceRepo.UploadBalance(accountBalanceDAL);
            }

            // return the result
            return(uploadStatus);
        }
        // upload account balance
        public string UploadBalance(accountbalance accountBalance)
        {
            DbContext.accountbalances.Add(accountBalance);
            int result = DbContext.SaveChanges();

            if (result != 0)
            {
                return("uploaded succesfully");
            }
            else
            {
                return("An error occured");
            }
        }
        public string DeleteAccountBalance(int year, int month)
        {
            accountbalance accountToDelete = DbContext.accountbalances.Where(o => o.year == year && o.month == month).FirstOrDefault();

            DbContext.Entry(accountToDelete).State = System.Data.Entity.EntityState.Deleted;
            int result = DbContext.SaveChanges();

            if (result != 0)
            {
                return("deleted successfully");
            }
            else
            {
                return("Error occured while deleting");
            }
        }
        // View balance of a month
        public AccountBalance ViewBalance(int year, int month)
        {
            // call viewBalance method
            accountbalance accountBalance = _AccountBalanceRepo.ViewBalance(year, month);

            // create object for BLL
            AccountBalance accountBalanceResult = new AccountBalance();

            // if balance record exists
            if (accountBalance != null)
            {
                accountBalanceResult.year      = accountBalance.year;
                accountBalanceResult.month     = accountBalance.month;
                accountBalanceResult.rnd       = (double)accountBalance.rnd;
                accountBalanceResult.canteen   = (double)accountBalance.canteen;
                accountBalanceResult.ceocar    = (double)accountBalance.ceocar;
                accountBalanceResult.marketing = (double)accountBalance.marketing;
                accountBalanceResult.parking   = (double)accountBalance.parking;
                if (accountBalance.uid != null)
                {
                    accountBalanceResult.uid = (int)accountBalance.uid;
                }
                else
                {
                    accountBalanceResult.uid = 0;
                }
            }
            else
            {
                // if balances ara not in the db
                accountBalanceResult.year      = 0;
                accountBalanceResult.month     = 0;
                accountBalanceResult.rnd       = 0;
                accountBalanceResult.canteen   = 0;
                accountBalanceResult.ceocar    = 0;
                accountBalanceResult.marketing = 0;
                accountBalanceResult.parking   = 0;
                accountBalanceResult.uid       = 0;
            }


            return(accountBalanceResult);
        }
        // method to view current balance account typewise
        public double[] ViewCurrentBalance(string accountType)
        {
            double[] balance = new double[2];

            // call repository method
            accountbalance accountBalance = _AccountBalanceRepo.ViewCurrentBalance();

            // if at least one record is in the db records in the database
            if (accountBalance != null)
            {
                balance[0] = 0;
                if (accountType == "rnd")
                {
                    balance[1] = (double)accountBalance.rnd;
                }
                else if (accountType == "canteen")
                {
                    balance[1] = (double)accountBalance.canteen;
                }
                else if (accountType == "ceocar")
                {
                    balance[1] = (double)accountBalance.ceocar;
                }
                else if (accountType == "marketing")
                {
                    balance[1] = (double)accountBalance.marketing;
                }
                else if (accountType == "parking")
                {
                    balance[1] = (double)accountBalance.parking;
                }
            }
            else
            {
                balance[0] = 1;
            }

            // return the result
            return(balance);
        }
        // view balance of an account
        public accountbalance ViewBalance(int year, int month)
        {
            accountbalance accountBalanceresult = DbContext.accountbalances.Where(o => o.year == year && o.month == month).FirstOrDefault();

            return(accountBalanceresult);
        }
Beispiel #12
0
        public void ViewBalanceChart_Data_Available_In_DB()
        {
            int startYear  = 2017;
            int startMonth = 1;
            int endYear    = 2017;
            int endMonth   = 2;

            List <accountbalance> resultDAL = new List <accountbalance>();

            accountbalance resultDALValue1 = new accountbalance();

            resultDALValue1.year      = 2017;
            resultDALValue1.month     = 1;
            resultDALValue1.rnd       = 1200.36;
            resultDALValue1.canteen   = 4563.36;
            resultDALValue1.ceocar    = -635.89;
            resultDALValue1.marketing = 1456.25;
            resultDALValue1.parking   = 788.26;
            resultDAL.Add(resultDALValue1);

            accountbalance resultDALValue2 = new accountbalance();

            resultDALValue2.year      = 2017;
            resultDALValue2.month     = 2;
            resultDALValue2.rnd       = 10000.00;
            resultDALValue2.canteen   = 150000.25;
            resultDALValue2.ceocar    = 2500.36;
            resultDALValue2.marketing = 69354.25;
            resultDALValue2.parking   = 25369.25;
            resultDAL.Add(resultDALValue2);



            List <AccountBalance> expected = new List <AccountBalance>();

            AccountBalance expectedValue1 = new AccountBalance();

            expectedValue1.year      = 2017;
            expectedValue1.month     = 1;
            expectedValue1.rnd       = 1200.36;
            expectedValue1.canteen   = 4563.36;
            expectedValue1.ceocar    = -635.89;
            expectedValue1.marketing = 1456.25;
            expectedValue1.parking   = 788.26;
            expected.Add(expectedValue1);

            AccountBalance expectedValue2 = new AccountBalance();

            expectedValue2.year      = 2017;
            expectedValue2.month     = 2;
            expectedValue2.rnd       = 10000.00;
            expectedValue2.canteen   = 150000.25;
            expectedValue2.ceocar    = 2500.36;
            expectedValue2.marketing = 69354.25;
            expectedValue2.parking   = 25369.25;
            expected.Add(expectedValue2);



            var mockAccountBalanceRepo = new Mock <IAccountBalanceRepo>();

            mockAccountBalanceRepo.Setup(x => x.ViewBalanceChart(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>())).Returns(resultDAL);

            AccountBalanceService accountBalanceService = new AccountBalanceService(mockAccountBalanceRepo.Object);
            List <AccountBalance> actual = accountBalanceService.ViewBalanceChart(startYear, startMonth, endYear, endMonth);

            for (int i = 0; i < actual.Count; i++)
            {
                AssertObjects.PropertyValuesAreEquals(expected[i], actual[i]);
            }
        }