Ejemplo n.º 1
0
        public Invoice(Contract contract, decimal consumption)
        {
            Contract = contract;

            Consumption         = consumption;
            MonthsInInvoiceTerm = 12 / (uint)Contract.InvoiceFrequency;
            InvoiceTerm         = new TermsItem(Contract.InvoiceTerm.Start, MonthsInInvoiceTerm);
        }
Ejemplo n.º 2
0
        public void MonthTermSpan()
        {
            var i = new TermsItem(new DateTime(2019, 1, 1), 12, PeriodUnit.Month);
            var s = i.TermSpan(2);

            Assert.AreEqual(s.Start, new DateTime(2019, 3, 1));
            Assert.AreEqual(s.End, new DateTime(2019, 3, 31));
        }
Ejemplo n.º 3
0
        public void QuarterTermSpan()
        {
            var i = new TermsItem(new DateTime(2019, 1, 1), 4, PeriodUnit.Quarter);
            var s = i.TermSpan(1);

            Assert.AreEqual(s.Start, new DateTime(2019, 4, 1));
            Assert.AreEqual(s.End, new DateTime(2019, 6, 30));
        }
Ejemplo n.º 4
0
        public void StandingChargeDescription()
        {
            var p = Invoice.StandingCharges();
            var t = new TermsItem(Contract.InvoiceTerm.Start, 12 / (uint)Contract.InvoiceFrequency);

            Assert.IsTrue(p[0].Description.Contains(t.TermSpan(0).Start.ToShortDateString()));
            Assert.IsTrue(p[0].Description.Contains(t.TermSpan(0).End.ToShortDateString()));
            Assert.IsTrue(p[1].Description.Contains(t.TermSpan(1).Start.ToShortDateString()));
            Assert.IsTrue(p[1].Description.Contains(t.TermSpan(1).End.ToShortDateString()));
        }
Ejemplo n.º 5
0
        public void TermSpanOfLast()
        {
            var i = new TermsItem(new DateTime(2018, 1, 15), 4, PeriodUnit.Quarter);
            var t = new TermSpan()
            {
                Number = 3, Start = new DateTime(2018, 10, 15), End = new DateTime(2019, 1, 14)
            };

            Assert.AreEqual(i.TermSpan(new DateTime(2019, 1, 14)), t);
        }
Ejemplo n.º 6
0
        public void BrokenYear()
        {
            var i = new TermsItem(new DateTime(2018, 2, 1), 12, PeriodUnit.Month);

            Assert.AreEqual(i.Term, PeriodUnit.Month);
            Assert.AreEqual(i.Amount, 12);

            Assert.AreEqual(i.Start, new DateTime(2018, 2, 1));
            Assert.AreEqual(i.End, new DateTime(2019, 1, 31));

            Assert.AreEqual(i.Years, 1);
            Assert.AreEqual(i.Months, 12);
            Assert.AreEqual(i.Days, 365);
        }
Ejemplo n.º 7
0
        public void QuarterTerm()
        {
            var i = new TermsItem(new DateTime(2019, 1, 1), 4, PeriodUnit.Quarter);

            Assert.AreEqual(i.Term, PeriodUnit.Quarter);
            Assert.AreEqual(i.Amount, 4);

            Assert.AreEqual(i.Start, new DateTime(2019, 1, 1));
            Assert.AreEqual(i.End, new DateTime(2019, 12, 31));

            Assert.AreEqual(i.Years, 1);
            Assert.AreEqual(i.Months, 12);
            Assert.AreEqual(i.Days, 365);
        }
Ejemplo n.º 8
0
        public void LeapYear()
        {
            var i = new TermsItem(new DateTime(2020, 1, 1), 12, PeriodUnit.Month);

            Assert.AreEqual(i.Start, new DateTime(2020, 1, 1));
            Assert.AreEqual(i.End, new DateTime(2020, 12, 31));

            Assert.AreEqual(i.Term, PeriodUnit.Month);
            Assert.AreEqual(i.Amount, 12);

            Assert.AreEqual(i.Years, 1);
            Assert.AreEqual(i.Months, 12);
            Assert.AreEqual(i.Days, 366);
        }
Ejemplo n.º 9
0
 public static TermsItem CreateTermsItem(int ID)
 {
     TermsItem termsItem = new TermsItem();
     termsItem.Id = ID;
     return termsItem;
 }
Ejemplo n.º 10
0
 public void AddToTerms(TermsItem termsItem)
 {
     base.AddObject("Terms", termsItem);
 }
Ejemplo n.º 11
0
        public void TermNumberAfterPeriod()
        {
            var i = new TermsItem(new DateTime(2018, 2, 1), 12, PeriodUnit.Month);

            i.TermSpan(new DateTime(2020, 1, 1));
        }
Ejemplo n.º 12
0
        public void TermSpanOfDateAfter()
        {
            var i = new TermsItem(new DateTime(2018, 2, 1), 12, PeriodUnit.Month);

            i.TermSpan(new DateTime(2019, 2, 1));
        }
Ejemplo n.º 13
0
        public void TermSpanOfDateBefore()
        {
            var i = new TermsItem(new DateTime(2018, 2, 1), 12, PeriodUnit.Month);

            i.TermSpan(new DateTime(2018, 1, 31));
        }
Ejemplo n.º 14
0
        public void TermSpanOf12()
        {
            var i = new TermsItem(new DateTime(2018, 2, 1), 12, PeriodUnit.Month);

            i.TermSpan(12);
        }