def testNoRecurrenceChange(self): """ If recurrence fields weren't changed, empty list should be returned. """ emptyDiff = sharing.Diff(set(), set()) aliases = self._getAliases( self.uuid, [self.start + n * one_week for n in range(5)]) # No conflicts when master isn't recurring self.assertEqual(self._getConflicts(emptyDiff, aliases), []) # create a diff with an EventRecord, but no recurrence changes self.kwds['dtstart'] = ';VALUE=DATE-TIME:20070301T090000' record = sharing.model.EventRecord(self.uuid, **self.kwds) diff = sharing.Diff(set([record]), set()) # No conflicts self.assertEqual(self._getConflicts(diff, aliases), []) # try again when master is recurring self.master.rruleset = self._makeRecurrenceRuleSet(freq='weekly') conflicts = findRecurrenceConflicts(self.view, self.uuid, emptyDiff, aliases) # No conflicts with an empty diff self.assertEqual(self._getConflicts(emptyDiff, aliases), []) # A start time change should give conflicts self.assertNotEqual(self._getConflicts(diff, aliases), [])
def testNoRecurrenceChange(self): """ If recurrence fields weren't changed, empty list should be returned. """ emptyDiff = sharing.Diff(set(), set()) aliases = self._getAliases(self.uuid, [self.start + n*one_week for n in range(5)]) # No conflicts when master isn't recurring self.assertEqual(self._getConflicts(emptyDiff, aliases), []) # create a diff with an EventRecord, but no recurrence changes self.kwds['dtstart'] = ';VALUE=DATE-TIME:20070301T090000' record = sharing.model.EventRecord(self.uuid, **self.kwds) diff = sharing.Diff(set([record]), set()) # No conflicts self.assertEqual(self._getConflicts(diff, aliases), []) # try again when master is recurring self.master.rruleset = self._makeRecurrenceRuleSet(freq='weekly') conflicts = findRecurrenceConflicts(self.view, self.uuid, emptyDiff, aliases) # No conflicts with an empty diff self.assertEqual(self._getConflicts(emptyDiff, aliases), []) # A start time change should give conflicts self.assertNotEqual(self._getConflicts(diff, aliases), [])
def _getConflicts(self, diff, aliases): return findRecurrenceConflicts(self.view, self.uuid, diff, aliases)