コード例 #1
0
 public Calculator(EconomicController ecoController)
 {
     economicObjectList = new List <EconomicObject>();
     if (ecoController != null)
     {
         economicObjectList = ecoController.GetList;
     }
     else
     {
         Debug.WriteLine("ecocontroller was null");
         ErrorLogger.Add("Ecocontroller was null in the constructor of calcualtor");
     }
 }
コード例 #2
0
ファイル: Program.cs プロジェクト: Binett/BudgetCalculator
        private static void Main(string[] args)
        {
            if (args is null)
            {
                throw new ArgumentNullException(nameof(args));
            }

            //Skapa en ecocontroller.
            EconomicController ecoController = new EconomicController();

            //För in data i ecocontrollern
            ecoController.AddEconomicObjectToList("Giraffe", EconomicType.Saving, 9999.9);
            ecoController.AddEconomicObjectToList("Income", EconomicType.Income, 5000);
            ecoController.AddEconomicObjectToList(" ", EconomicType.Expense, double.MaxValue);
            ecoController.AddEconomicObjectToList(null, EconomicType.Income, -2222.222);

            //Skapa en rapport med ecocontrollern
            BudgetReport report = new BudgetReport(ecoController);

            //Skapa en writer
            WriteToFile writer = new WriteToFile();

            //Skriv errorloggern till fil
            writer.WriteStringToFile("the error log", ErrorLogger.GetSummarizedLogAsString());

            //Ta bort giraffen, för dyr.
            ecoController.RemoveEconomicObjectFromList("Giraffe");

            //Lägg till lite grejjer
            ecoController.AddEconomicObjectToList("Salary", EconomicType.Income, 14000);
            ecoController.AddEconomicObjectToList("Rent", EconomicType.Expense, 2000);
            ecoController.AddEconomicObjectToList("Subscription", EconomicType.Expense, 99);
            ecoController.AddEconomicObjectToList("Food", EconomicType.Expense, 1500);
            ecoController.AddEconomicObjectToList("Savings", EconomicType.Saving, 0.1);

            //Ny rapport
            report = new BudgetReport(ecoController);

            //Skicka till consolen
            Console.WriteLine(report.GetCalculatedDataToString());

            //Skriv rapporten till fil
            writer.WriteStringToFile("Private economy report", report.GetCalculatedDataToString());
        }
コード例 #3
0
        private void BrugerindexTest(decimal forventetAntal, decimal forventetPris, decimal brugerIndex)
        {
            // arrange
            int simuleringsMaaneder = 12;


            string  vareNummer    = "10";
            decimal vareSalgsPris = 100;
            decimal vareAntal     = 5;

            string debitorNummer = "1";

            decimal? abonnentPrisIndex   = null;
            decimal? abonnentSpecialPris = null;
            decimal? abonnentRabat       = null;
            DateTime?abonnentRabatUdloeb = null;
            DateTime abonnentStart       = DateTime.Now;
            DateTime abonnentUdloeb      = abonnentStart.AddMonths(1);
            DateTime abonnentSlut        = DateTime.MaxValue;

            string abonnementInterval    = "Month";
            string abonnementOpkraevning = "Full";
            bool   abonnementKalenderAar = false;

            List <Abonnement> abonnementer = Vaerktoejer.GenererTestAbonnement(vareNummer, vareSalgsPris, vareAntal, debitorNummer, abonnentPrisIndex, abonnentSpecialPris, abonnentRabat, abonnentRabatUdloeb, abonnentStart, abonnentSlut, abonnentUdloeb, abonnementInterval, abonnementOpkraevning, abonnementKalenderAar);


            // act
            EconomicController ec      = new EconomicController(387892, "DTU", "Trustno1");
            List <Transaktion> faktisk = ec.GenererTransaktioner(abonnementer, simuleringsMaaneder, brugerIndex);


            // assert
            decimal faktiskPris = 0, faktiskAntal = 0;

            foreach (Transaktion transaktion in faktisk)
            {
                faktiskPris  = faktiskPris + transaktion.Beloeb;
                faktiskAntal = faktiskAntal + (decimal)transaktion.Antal;
            }

            Assert.AreEqual(forventetPris, faktiskPris);
            Assert.AreEqual(forventetAntal, faktiskAntal);
        }
コード例 #4
0
 /// <summary>
 /// Constructor initializes all necessary objects which the class needs. Must have an economic object to function.
 /// </summary>
 /// <param name="_ecoController"></param>
 public BudgetReport(EconomicController _ecoController)
 {
     if (_ecoController != null)
     {
         ecoController        = _ecoController;
         calc                 = new Calculator(ecoController);
         TotalIncome          = calc.GetTotalIncome();
         TotalExpenses        = calc.GetTotalExpenses();
         TotalMoneyForSavings = calc.GetTotalMoneyForSaving();
         Balance              = calc.GetRemainingBalance(out List <EconomicObject> paidExpenses, out List <EconomicObject> unpayedExpenses);
         PaidExpenses         = paidExpenses;
         UnpaidExpenses       = unpayedExpenses;
     }
     else
     {
         Debug.WriteLine("ecocontroller was null");
         ErrorLogger.Add("Ecocontroller was null when instantiating budgetreport object");
     }
 }
コード例 #5
0
 public TestSeeder()
 {
     ecoController = new EconomicController();
 }
コード例 #6
0
 public void Setup()
 {
     ecoController = new EconomicController();
     ecoController.AddEconomicObjectToList("Salary", EconomicType.Income, 2000);
 }