MediaFile: allow setting date fields to None

This commit is contained in:
Adrian Sampson 2014-05-18 15:14:36 -07:00
parent dfa8445980
commit 943cbe0838
2 changed files with 11 additions and 1 deletions

View file

@ -1057,7 +1057,10 @@ class DateField(MediaField):
return None
def __set__(self, mediafile, date):
self._set_date_tuple(mediafile, date.year, date.month, date.day)
if date is None:
self._set_date_tuple(mediafile, None, None, None)
else:
self._set_date_tuple(mediafile, date.year, date.month, date.day)
def __delete__(self, mediafile):
super(DateField, self).__delete__(mediafile)

View file

@ -235,6 +235,13 @@ class TypeTest(unittest.TestCase):
self.mf.track = None
self.assertEqual(self.mf.track, 0)
def test_set_date_to_none(self):
self.mf.date = None
self.assertIsNone(self.mf.date)
self.assertIsNone(self.mf.year)
self.assertIsNone(self.mf.month)
self.assertIsNone(self.mf.day)
class SoundCheckTest(unittest.TestCase):
def test_round_trip(self):