コード例 #1
0
def main():
    parser = argparse.ArgumentParser(description='Timelog - Report generator for gtimelog format')

    parser.add_argument('--month', help='Month of the report')
    parser.add_argument('--year', help='Year of the report')
    parser.add_argument('--tasks',
                        help='With tasks or not, boolean',
                        action='store_true',
                        default=False)
    parser.add_argument('--generate-timelog',
                        help='With a format */*/2013',
                        default='*')
    parser.add_argument('--client',
                        help='The client in case you want a client report',
                        default=None)
    parser.add_argument('--html',
                        help='Generate HTML page with the stats',
                        action='store_true',
                        default=False)

    arguments = parser.parse_args()
    timelog_report = TimelogReport(arguments)
    result = timelog_report.run()

    # TODO Or write it to a file
    print(result)
コード例 #2
0
 def test_dates_data(self):
     self.args['start_date'] = '20/4/2013'
     self.args['end_date'] = '28/4/2013'
     arguments = ArgParseMock(**self.args)
     timelog_report = TimelogReport(arguments)
     self.assertEqual('====== Day 24 =======' in timelog_report.run(),
                      True)
コード例 #3
0
 def test_dates_tasks(self):
     self.args['start_date'] = '26/4/2013'
     self.args['end_date'] = '27/4/2013'
     self.args['tasks'] = True
     self.args['client'] = 'project1'
     arguments = ArgParseMock(**self.args)
     timelog_report = TimelogReport(arguments)
     self.assertEqual('* [X] Task completed' in timelog_report.run(),
                      True)
コード例 #4
0
 def test_dates_price(self):
     self.args['start_date'] = '24/4/2013'
     self.args['end_date'] = '25/4/2013'
     self.args['price'] = True
     self.args['client'] = 'project1'
     arguments = ArgParseMock(**self.args)
     timelog_report = TimelogReport(arguments)
     self.assertEqual('Total amount: 180.00' in timelog_report.run(),
                      True)
コード例 #5
0
 def test_dates_empty(self):
     arguments = ArgParseMock(**self.args)
     timelog_report = TimelogReport(arguments)
     self.assertEqual(timelog_report.run(),
                      'Error: No entries')