Ran update-copyright.py.
[pygrader.git] / pygrader / model / assignment.py
1 # Copyright (C) 2012 W. Trevor King <wking@drexel.edu>
2 #
3 # This file is part of pygrader.
4 #
5 # pygrader is free software: you can redistribute it and/or modify it under the
6 # terms of the GNU General Public License as published by the Free Software
7 # Foundation, either version 3 of the License, or (at your option) any later
8 # version.
9 #
10 # pygrader is distributed in the hope that it will be useful, but WITHOUT ANY
11 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12 # A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License along with
15 # pygrader.  If not, see <http://www.gnu.org/licenses/>.
16
17 class Assignment (object):
18     def __init__(self, name, points=1, weight=0, due=0):
19         self.name = name
20         self.points = points
21         self.weight = weight
22         self.due = due
23
24     def __str__(self):
25         return '<{} {}>'.format(type(self).__name__, self.name)
26
27     def __lt__(self, other):
28         if self.due < other.due:
29             return True
30         elif other.due < self.due:
31             return False
32         return self.name < other.name