Пример #1
0
def create_summary(backend):
    flex = backend.get_flex()
    df = backend.get_transactions()

    dateinfo = transactions.DateInfo()
    msgs = transactions.summary_data(dateinfo, df, flex)

    return msgs
Пример #2
0
    def test_last_month(self):
        trans = [
            ('8/2/2016', 105),
            ('8/8/2016', 105),
            ('8/15/2016', 10)
        ]

        dateinfo = transactions.DateInfo(datetime.date(2016, 9, 5))
        flex = 310
        df = _make_transactions(trans)
        target = transactions._get_last_month(df, flex, dateinfo)

        self.assertEqual(310, target.goal)
        self.assertEqual(220, target.spent)
        self.assertEqual(90, target.left)
        self.assertEqual(0, target.over)
Пример #3
0
    def test_summary(self):
        expected = ["Wk 1 (4d): $30.00 / 40.00 (+10.00)",
                    "Wk 2 (7d): $80.00 / 72.69 (-7.31)",
                    "Total (11d): $110.00 / 110.00 (+0.00)"]

        trans = [
            ('9/2/2016', 30),
            ('9/6/2016', 80),
        ]
        dateinfo = transactions.DateInfo(datetime.date(2016, 9, 12))
        flex = 300

        df = _make_transactions(trans)

        lines = transactions.summary_data(dateinfo, df, flex)

        self.assertEqual(expected, lines)
Пример #4
0
    def test_last_week(self):
        trans = [
            ('8/2/2016', 105),
            ('8/8/2016', 105),
            ('8/15/2016', 10)
        ]

        dateinfo = transactions.DateInfo(datetime.date(2016, 8, 18))
        flex = 310
        df = _make_transactions(trans)

        target = transactions._get_last_week(df, flex, dateinfo)

        self.assertEqual(56, target.goal)
        self.assertEqual(105, target.spent)
        self.assertEqual(0, target.left)
        self.assertEqual(49, target.over)
Пример #5
0
    def test_adjusted(self):
        trans = [
            ('8/2/2016', 112.5),
            ('8/8/2016', 112.5),
            ('8/15/2016', 10)
        ]

        dateinfo = transactions.DateInfo(datetime.date(2016, 8, 18))
        flex = 310
        df = _make_transactions(trans)

        target = transactions._get_adjusted_targets(df, flex, dateinfo)

        self.assertEqual(35, target.goal)
        self.assertEqual(10, target.spent)
        self.assertEqual(25, target.left)
        self.assertEqual(0, target.over)
Пример #6
0
    def test_weekly(self):
        trans = [
            ('8/2/2016', 10),
            ('8/8/2016', 10),
            ('8/9/2016', 10)
        ]

        dateinfo = transactions.DateInfo(datetime.date(2016, 8, 10))
        flex = 310
        df = _make_transactions(trans)

        target = transactions._get_week_target(df, flex, dateinfo)

        self.assertEqual(70, target.goal)
        self.assertEqual(20, target.spent)
        self.assertEqual(50, target.left)
        self.assertEqual(0, target.over)
Пример #7
0
    def test_month_days(self):
        date = datetime.date(2016, 9, 12)
        dateinfo = transactions.DateInfo(date)

        self.assertEqual(11, dateinfo.days_before_this_week)
        self.assertEqual(19, dateinfo.days_after_week_start)