]>
git.madduck.net Git - etc/taskwarrior.git/commitdiff 
madduck's git repository 
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath>  — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch  and git-send-email  to
patches@ git. madduck. net .
If you'd read over the Git project's submission guidelines  and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
  arranged .
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig  and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:
 
summary  | 
shortlog  | 
log  | 
commit  | commitdiff | 
tree 
raw  | 
patch  | 
inline  | side by side (parent: 
1225677 )
 
         "Programming Language :: Python :: 3.3",
         'License :: OSI Approved :: BSD License',
         'Topic :: Software Development :: Libraries :: Python Modules',
         "Programming Language :: Python :: 3.3",
         'License :: OSI Approved :: BSD License',
         'Topic :: Software Development :: Libraries :: Python Modules',
-        'Intended Audience :: Developers'
+        'Intended Audience :: Developers', 
 
         if self.version < self.VERSION_2_4_0:
             return task._data['description']
         else:
         if self.version < self.VERSION_2_4_0:
             return task._data['description']
         else:
-            return six.u("description:'{0}'").format(task._data['description']
-                                                     or '')
+            return six.u("description:'{0}'").format(
+                task._data['description'] or '',
+            )
 
     def convert_datetime_string(self, value):
 
 
     def convert_datetime_string(self, value):
 
             naive = datetime.datetime.strptime(result[0], DATE_FORMAT_CALC)
             localized = local_zone.localize(naive)
         else:
             naive = datetime.datetime.strptime(result[0], DATE_FORMAT_CALC)
             localized = local_zone.localize(naive)
         else:
-            raise ValueError("Provided value could not be converted to "
-                             "datetime, its type is not supported: {}"
-                             .format(type(value)))
+            raise ValueError(
+                'Provided value could not be converted to '
+                'datetime, its type is not supported: {}'
+                .format(type(value)),
+            )
             # Expected output: Created task 1.
             #                  Created task 1 (recurrence template).
             if len(id_lines) != 1 or len(id_lines[0].split(' ')) not in (3, 5):
             # Expected output: Created task 1.
             #                  Created task 1 (recurrence template).
             if len(id_lines) != 1 or len(id_lines[0].split(' ')) not in (3, 5):
-                raise TaskWarriorException("Unexpected output when creating "
-                                           "task: %s" % '\n'.join(id_lines))
+                raise TaskWarriorException(
+                    'Unexpected output when creating '
+                    'task: %s' % '\n'.join(id_lines),
+                )
 
             # Circumvent the ID storage, since ID is considered read-only
             identifier = id_lines[0].split(' ')[2].rstrip('.')
 
             # Circumvent the ID storage, since ID is considered read-only
             identifier = id_lines[0].split(' ')[2].rstrip('.')
         # If more than 1 task has been matched still, raise an exception
         if not valid(output):
             raise TaskWarriorException(
         # If more than 1 task has been matched still, raise an exception
         if not valid(output):
             raise TaskWarriorException(
-                "Unique identifiers {0} with description: {1} matches "
-                "multiple tasks: {2}" .format(
+                'Unique identifiers {0} with description: {1} matches '
+                'multiple tasks: {2}' .format(
                     task['uuid'] or task['id'], task['description'], output)
             )
 
                     task['uuid'] or task['id'], task['description'], output)
             )
 
 
         return self['uuid'].__hash__()
 
     def __repr__(self):
         return self['uuid'].__hash__()
 
     def __repr__(self):
-        return "LazyUUIDTask: {0}" .format(self._uuid)
+        return 'LazyUUIDTask: {0}' .format(self._uuid)
 
     def __copy__(self):
         return LazyUUIDTask(self._tw, self._uuid)
 
     def __copy__(self):
         return LazyUUIDTask(self._tw, self._uuid)
             return getattr(self, name)
 
     def __repr__(self):
             return getattr(self, name)
 
     def __repr__(self):
-        return "LazyUUIDTaskSet([{0}])" .format(', '.join(self._uuids))
+        return 'LazyUUIDTaskSet([{0}])' .format(', '.join(self._uuids))
 
     def __eq__(self, other):
         return set(t['uuid'] for t in other) == self._uuids
 
     def __eq__(self, other):
         return set(t['uuid'] for t in other) == self._uuids
         return self.difference_update(other)
 
     def __rsub__(self, other):
         return self.difference_update(other)
 
     def __rsub__(self, other):
-        return LazyUUIDTaskSet(self._tw,
-                               set(t['uuid'] for t in other) - self._uuids)
+        return LazyUUIDTaskSet(
+            self._tw,
+            set(t['uuid'] for t in other) - self._uuids,
+        )
 
     def __or__(self, other):
         return self.union(other)
 
     def __or__(self, other):
         return self.union(other)
         return all([task in self for task in other])
 
     def union(self, other):
         return all([task in self for task in other])
 
     def union(self, other):
-        return LazyUUIDTaskSet(self._tw,
-                               self._uuids | set(t['uuid'] for t in other))
+        return LazyUUIDTaskSet(
+            self._tw,
+            self._uuids | set(t['uuid'] for t in other),
+        )
 
     def intersection(self, other):
 
     def intersection(self, other):
-        return LazyUUIDTaskSet(self._tw,
-                               self._uuids & set(t['uuid'] for t in other))
+        return LazyUUIDTaskSet(
+            self._tw,
+            self._uuids & set(t['uuid'] for t in other),
+        )
 
     def difference(self, other):
 
     def difference(self, other):
-        return LazyUUIDTaskSet(self._tw,
-                               self._uuids - set(t['uuid'] for t in other))
+        return LazyUUIDTaskSet(
+            self._tw,
+            self._uuids - set(t['uuid'] for t in other),
+        )
 
     def symmetric_difference(self, other):
 
     def symmetric_difference(self, other):
-        return LazyUUIDTaskSet(self._tw,
-                               self._uuids ^ set(t['uuid'] for t in other))
+        return LazyUUIDTaskSet(
+            self._tw,
+            self._uuids ^ set(t['uuid'] for t in other),
+        )
 
     def update(self, other):
         self._uuids |= set(t['uuid'] for t in other)
 
     def update(self, other):
         self._uuids |= set(t['uuid'] for t in other)
 
         # Check that all the tasks are saved
         for task in (cur_dependencies or set()):
             if not task.saved:
         # Check that all the tasks are saved
         for task in (cur_dependencies or set()):
             if not task.saved:
-                raise Task.NotSaved('Task \'%s\' needs to be saved before '
-                                    'it can be set as dependency.' % task)
+                raise Task.NotSaved(
+                    'Task \'%s\' needs to be saved before '
+                    'it can be set as dependency.' % task,
+                )
 
         return super(Task, self).serialize_depends(cur_dependencies)
 
     def delete(self):
         if not self.saved:
             raise Task.NotSaved(
 
         return super(Task, self).serialize_depends(cur_dependencies)
 
     def delete(self):
         if not self.saved:
             raise Task.NotSaved(
-                "Task needs to be saved before it can be deleted")
+                'Task needs to be saved before it can be deleted',
+            )
 
         # Refresh the status, and raise exception if the task is deleted
         self.refresh(only_fields=['status'])
 
         if self.deleted:
 
         # Refresh the status, and raise exception if the task is deleted
         self.refresh(only_fields=['status'])
 
         if self.deleted:
-            raise Task.DeletedTask("Task was already deleted" )
+            raise Task.DeletedTask('Task was already deleted' )
 
         self.backend.delete_task(self)
 
 
         self.backend.delete_task(self)
 
     def start(self):
         if not self.saved:
             raise Task.NotSaved(
     def start(self):
         if not self.saved:
             raise Task.NotSaved(
-                "Task needs to be saved before it can be started")
+                'Task needs to be saved before it can be started',
+            )
 
         # Refresh, and raise exception if task is already completed/deleted
         self.refresh(only_fields=['status'])
 
         if self.completed:
 
         # Refresh, and raise exception if task is already completed/deleted
         self.refresh(only_fields=['status'])
 
         if self.completed:
-            raise Task.CompletedTask("Cannot start a completed task" )
+            raise Task.CompletedTask('Cannot start a completed task' )
-            raise Task.DeletedTask("Deleted task cannot be started" )
+            raise Task.DeletedTask('Deleted task cannot be started' )
-            raise Task.ActiveTask("Task is already active" )
+            raise Task.ActiveTask('Task is already active' )
 
         self.backend.start_task(self)
 
 
         self.backend.start_task(self)
 
     def stop(self):
         if not self.saved:
             raise Task.NotSaved(
     def stop(self):
         if not self.saved:
             raise Task.NotSaved(
-                "Task needs to be saved before it can be stopped")
+                'Task needs to be saved before it can be stopped',
+            )
 
         # Refresh, and raise exception if task is already completed/deleted
         self.refresh(only_fields=['status'])
 
         if not self.active:
 
         # Refresh, and raise exception if task is already completed/deleted
         self.refresh(only_fields=['status'])
 
         if not self.active:
-            raise Task.InactiveTask("Cannot stop an inactive task" )
+            raise Task.InactiveTask('Cannot stop an inactive task' )
 
         self.backend.stop_task(self)
 
 
         self.backend.stop_task(self)
 
     def done(self):
         if not self.saved:
             raise Task.NotSaved(
     def done(self):
         if not self.saved:
             raise Task.NotSaved(
-                "Task needs to be saved before it can be completed")
+                'Task needs to be saved before it can be completed',
+            )
 
         # Refresh, and raise exception if task is already completed/deleted
         self.refresh(only_fields=['status'])
 
         if self.completed:
 
         # Refresh, and raise exception if task is already completed/deleted
         self.refresh(only_fields=['status'])
 
         if self.completed:
-            raise Task.CompletedTask("Cannot complete a completed task" )
+            raise Task.CompletedTask('Cannot complete a completed task' )
-            raise Task.DeletedTask("Deleted task cannot be completed" )
+            raise Task.DeletedTask('Deleted task cannot be completed' )
 
         self.backend.complete_task(self)
 
 
         self.backend.complete_task(self)
 
 
     def add_annotation(self, annotation):
         if not self.saved:
 
     def add_annotation(self, annotation):
         if not self.saved:
-            raise Task.NotSaved("Task needs to be saved to add annotation" )
+            raise Task.NotSaved('Task needs to be saved to add annotation' )
 
         self.backend.annotate_task(self, annotation)
         self.refresh(only_fields=['annotations'])
 
     def remove_annotation(self, annotation):
         if not self.saved:
 
         self.backend.annotate_task(self, annotation)
         self.refresh(only_fields=['annotations'])
 
     def remove_annotation(self, annotation):
         if not self.saved:
-            raise Task.NotSaved("Task needs to be saved to remove annotation" )
+            raise Task.NotSaved('Task needs to be saved to remove annotation' )
 
         if isinstance(annotation, TaskAnnotation):
             annotation = annotation['description']
 
         if isinstance(annotation, TaskAnnotation):
             annotation = annotation['description']
     def refresh(self, only_fields=None, after_save=False):
         # Raise error when trying to refresh a task that has not been saved
         if not self.saved:
     def refresh(self, only_fields=None, after_save=False):
         # Raise error when trying to refresh a task that has not been saved
         if not self.saved:
-            raise Task.NotSaved("Task needs to be saved to be refreshed" )
+            raise Task.NotSaved('Task needs to be saved to be refreshed' )
 
         new_data = self.backend.refresh_task(self, after_save=after_save)
 
         if only_fields:
             to_update = dict(
 
         new_data = self.backend.refresh_task(self, after_save=after_save)
 
         if only_fields:
             to_update = dict(
-                [(k, new_data.get(k)) for k in only_fields])
+                [(k, new_data.get(k)) for k in only_fields],
+            )
             self._update_data(to_update, update_original=True)
         else:
             self._load_data(new_data)
             self._update_data(to_update, update_original=True)
         else:
             self._load_data(new_data)
     def __repr__(self):
         data = list(self[:REPR_OUTPUT_SIZE + 1])
         if len(data) > REPR_OUTPUT_SIZE:
     def __repr__(self):
         data = list(self[:REPR_OUTPUT_SIZE + 1])
         if len(data) > REPR_OUTPUT_SIZE:
-            data[-1] = "...(remaining elements truncated)..." 
+            data[-1] = '...(remaining elements truncated)...' 
         return repr(data)
 
     def __len__(self):
         return repr(data)
 
     def __len__(self):
         if not num:
             raise Task.DoesNotExist(
                 'Task matching query does not exist. '
         if not num:
             raise Task.DoesNotExist(
                 'Task matching query does not exist. '
-                'Lookup parameters were {0}'.format(kwargs))
+                'Lookup parameters were {0}'.format(kwargs),
+            )
         raise ValueError(
             'get() returned more than one Task -- it returned {0}! '
         raise ValueError(
             'get() returned more than one Task -- it returned {0}! '
-            'Lookup parameters were {1}'.format(num, kwargs))
+            'Lookup parameters were {1}'.format(num, kwargs),
+        )
 
         self.assertEqual(len(self.tw.tasks.all()), 0)
 
     def test_all_non_empty(self):
         self.assertEqual(len(self.tw.tasks.all()), 0)
 
     def test_all_non_empty(self):
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
         self.assertEqual(len(self.tw.tasks.all()), 1)
         self.assertEqual(self.tw.tasks.all()[0]['description'], 'test task')
         self.assertEqual(self.tw.tasks.all()[0]['status'], 'pending')
 
     def test_pending_non_empty(self):
         self.assertEqual(len(self.tw.tasks.all()), 1)
         self.assertEqual(self.tw.tasks.all()[0]['description'], 'test task')
         self.assertEqual(self.tw.tasks.all()[0]['status'], 'pending')
 
     def test_pending_non_empty(self):
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
         self.assertEqual(len(self.tw.tasks.pending()), 1)
         self.assertEqual(len(self.tw.tasks.pending()), 1)
-        self.assertEqual(self.tw.tasks.pending()[0]['description'],
-                         'test task')
+        self.assertEqual(
+            self.tw.tasks.pending()[0]['description'],
+            'test task',
+        )
         self.assertEqual(self.tw.tasks.pending()[0]['status'], 'pending')
 
     def test_completed_empty(self):
         self.assertEqual(self.tw.tasks.pending()[0]['status'], 'pending')
 
     def test_completed_empty(self):
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
         self.assertEqual(len(self.tw.tasks.completed()), 0)
 
     def test_completed_non_empty(self):
         self.assertEqual(len(self.tw.tasks.completed()), 0)
 
     def test_completed_non_empty(self):
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
         self.assertEqual(len(self.tw.tasks.completed()), 0)
         self.tw.tasks.all()[0].done()
         self.assertEqual(len(self.tw.tasks.completed()), 1)
 
     def test_deleted_empty(self):
         self.assertEqual(len(self.tw.tasks.completed()), 0)
         self.tw.tasks.all()[0].done()
         self.assertEqual(len(self.tw.tasks.completed()), 1)
 
     def test_deleted_empty(self):
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
         self.assertEqual(len(self.tw.tasks.deleted()), 0)
 
     def test_deleted_non_empty(self):
         self.assertEqual(len(self.tw.tasks.deleted()), 0)
 
     def test_deleted_non_empty(self):
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
         self.assertEqual(len(self.tw.tasks.deleted()), 0)
         self.tw.tasks.all()[0].delete()
         self.assertEqual(len(self.tw.tasks.deleted()), 1)
 
     def test_waiting_empty(self):
         self.assertEqual(len(self.tw.tasks.deleted()), 0)
         self.tw.tasks.all()[0].delete()
         self.assertEqual(len(self.tw.tasks.deleted()), 1)
 
     def test_waiting_empty(self):
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
         self.assertEqual(len(self.tw.tasks.waiting()), 0)
 
     def test_waiting_non_empty(self):
         self.assertEqual(len(self.tw.tasks.waiting()), 0)
 
     def test_waiting_non_empty(self):
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
         self.assertEqual(len(self.tw.tasks.waiting()), 0)
 
         t = self.tw.tasks.all()[0]
         self.assertEqual(len(self.tw.tasks.waiting()), 0)
 
         t = self.tw.tasks.all()[0]
         self.assertEqual(len(self.tw.tasks.waiting()), 1)
 
     def test_recurring_empty(self):
         self.assertEqual(len(self.tw.tasks.waiting()), 1)
 
     def test_recurring_empty(self):
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
         self.assertEqual(len(self.tw.tasks.recurring()), 0)
 
     def test_recurring_non_empty(self):
         self.assertEqual(len(self.tw.tasks.recurring()), 0)
 
     def test_recurring_non_empty(self):
-        Task(self.tw, description="test task", recur="daily",
-             due=datetime.datetime.now()).save()
+        Task(
+            self.tw,
+            description='test task',
+            recur='daily',
+            due=datetime.datetime.now(),
+        ).save()
         self.assertEqual(len(self.tw.tasks.recurring()), 1)
 
     def test_filtering_by_attribute(self):
         self.assertEqual(len(self.tw.tasks.recurring()), 1)
 
     def test_filtering_by_attribute(self):
-        Task(self.tw, description="no priority task" ).save()
-        Task(self.tw, priority="H", description="high priority task" ).save()
+        Task(self.tw, description='no priority task' ).save()
+        Task(self.tw, priority='H', description='high priority task' ).save()
         self.assertEqual(len(self.tw.tasks.all()), 2)
 
         # Assert that the correct number of tasks is returned
         self.assertEqual(len(self.tw.tasks.all()), 2)
 
         # Assert that the correct number of tasks is returned
-        self.assertEqual(len(self.tw.tasks.filter(priority="H" )), 1)
+        self.assertEqual(len(self.tw.tasks.filter(priority='H' )), 1)
 
         # Assert that the correct tasks are returned
 
         # Assert that the correct tasks are returned
-        high_priority_task = self.tw.tasks.get(priority="H")
-        self.assertEqual(high_priority_task['description'],
-                         "high priority task")
+        high_priority_task = self.tw.tasks.get(priority='H')
+        self.assertEqual(
+            high_priority_task['description'],
+            'high priority task',
+        )
 
     def test_filtering_by_empty_attribute(self):
 
     def test_filtering_by_empty_attribute(self):
-        Task(self.tw, description="no priority task" ).save()
-        Task(self.tw, priority="H", description="high priority task" ).save()
+        Task(self.tw, description='no priority task' ).save()
+        Task(self.tw, priority='H', description='high priority task' ).save()
         self.assertEqual(len(self.tw.tasks.all()), 2)
 
         # Assert that the correct number of tasks is returned
         self.assertEqual(len(self.tw.tasks.all()), 2)
 
         # Assert that the correct number of tasks is returned
 
         # Assert that the correct tasks are returned
         no_priority_task = self.tw.tasks.get(priority=None)
 
         # Assert that the correct tasks are returned
         no_priority_task = self.tw.tasks.get(priority=None)
-        self.assertEqual(no_priority_task['description'], "no priority task" )
+        self.assertEqual(no_priority_task['description'], 'no priority task' )
 
     def test_filter_for_task_with_space_in_descripition(self):
 
     def test_filter_for_task_with_space_in_descripition(self):
-        task = Task(self.tw, description="test task" )
+        task = Task(self.tw, description='test task' )
-        filtered_task = self.tw.tasks.get(description="test task" )
-        self.assertEqual(filtered_task['description'], "test task" )
+        filtered_task = self.tw.tasks.get(description='test task' )
+        self.assertEqual(filtered_task['description'], 'test task' )
 
     def test_filter_for_task_without_space_in_descripition(self):
 
     def test_filter_for_task_without_space_in_descripition(self):
-        task = Task(self.tw, description="test" )
+        task = Task(self.tw, description='test' )
-        filtered_task = self.tw.tasks.get(description="test" )
-        self.assertEqual(filtered_task['description'], "test" )
+        filtered_task = self.tw.tasks.get(description='test' )
+        self.assertEqual(filtered_task['description'], 'test' )
 
     def test_filter_for_task_with_space_in_project(self):
 
     def test_filter_for_task_with_space_in_project(self):
-        task = Task(self.tw, description="test", project="random project" )
+        task = Task(self.tw, description='test', project='random project' )
-        filtered_task = self.tw.tasks.get(project="random project" )
-        self.assertEqual(filtered_task['project'], "random project" )
+        filtered_task = self.tw.tasks.get(project='random project' )
+        self.assertEqual(filtered_task['project'], 'random project' )
 
     def test_filter_for_task_without_space_in_project(self):
 
     def test_filter_for_task_without_space_in_project(self):
-        task = Task(self.tw, description="test", project="random" )
+        task = Task(self.tw, description='test', project='random' )
-        filtered_task = self.tw.tasks.get(project="random" )
-        self.assertEqual(filtered_task['project'], "random" )
+        filtered_task = self.tw.tasks.get(project='random' )
+        self.assertEqual(filtered_task['project'], 'random' )
 
     def test_filter_with_empty_uuid(self):
         self.assertRaises(ValueError, lambda: self.tw.tasks.get(uuid=''))
 
     def test_filter_dummy_by_status(self):
 
     def test_filter_with_empty_uuid(self):
         self.assertRaises(ValueError, lambda: self.tw.tasks.get(uuid=''))
 
     def test_filter_dummy_by_status(self):
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
         t.save()
 
         tasks = self.tw.tasks.filter(status=t['status'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_uuid(self):
         t.save()
 
         tasks = self.tw.tasks.filter(status=t['status'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_uuid(self):
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
         t.save()
 
         tasks = self.tw.tasks.filter(uuid=t['uuid'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_entry(self):
         t.save()
 
         tasks = self.tw.tasks.filter(uuid=t['uuid'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_entry(self):
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
         t.save()
 
         tasks = self.tw.tasks.filter(entry=t['entry'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_description(self):
         t.save()
 
         tasks = self.tw.tasks.filter(entry=t['entry'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_description(self):
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
         t.save()
 
         tasks = self.tw.tasks.filter(description=t['description'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_start(self):
         t.save()
 
         tasks = self.tw.tasks.filter(description=t['description'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_start(self):
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_end(self):
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_end(self):
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_due(self):
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_due(self):
-        t = Task(self.tw, description="test" , due=datetime.datetime.now())
+        t = Task(self.tw, description='test' , due=datetime.datetime.now())
         t.save()
 
         tasks = self.tw.tasks.filter(due=t['due'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_until(self):
         t.save()
 
         tasks = self.tw.tasks.filter(due=t['due'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_until(self):
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
         t.save()
 
         tasks = self.tw.tasks.filter(until=t['until'])
         t.save()
 
         tasks = self.tw.tasks.filter(until=t['until'])
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
         t.save()
 
         tasks = self.tw.tasks.filter(modified=t['modified'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_scheduled(self):
         t.save()
 
         tasks = self.tw.tasks.filter(modified=t['modified'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_scheduled(self):
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
         t.save()
 
         tasks = self.tw.tasks.filter(scheduled=t['scheduled'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_tags(self):
         t.save()
 
         tasks = self.tw.tasks.filter(scheduled=t['scheduled'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_tags(self):
-        t = Task(self.tw, description="test", tags=["home" ])
+        t = Task(self.tw, description='test', tags=['home' ])
         t.save()
 
         tasks = self.tw.tasks.filter(tags=t['tags'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_projects(self):
         t.save()
 
         tasks = self.tw.tasks.filter(tags=t['tags'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_dummy_by_projects(self):
-        t = Task(self.tw, description="test", project="random" )
+        t = Task(self.tw, description='test', project='random' )
         t.save()
 
         tasks = self.tw.tasks.filter(project=t['project'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_by_priority(self):
         t.save()
 
         tasks = self.tw.tasks.filter(project=t['project'])
         self.assertEqual(list(tasks), [t])
 
     def test_filter_by_priority(self):
-        t = Task(self.tw, description="test", priority="H" )
+        t = Task(self.tw, description='test', priority='H' )
         t.save()
 
         tasks = self.tw.tasks.filter(priority=t['priority'])
         t.save()
 
         tasks = self.tw.tasks.filter(priority=t['priority'])
 
     def test_create_unsaved_task(self):
         # Make sure a new task is not saved unless explicitly called for
 
     def test_create_unsaved_task(self):
         # Make sure a new task is not saved unless explicitly called for
-        Task(self.tw, description="test task" )
+        Task(self.tw, description='test task' )
         self.assertEqual(len(self.tw.tasks.all()), 0)
 
         self.assertEqual(len(self.tw.tasks.all()), 0)
 
-    # TODO: once python 2.6 compatiblity is over, use context managers here
+    # TODO: once python 2.6 compatibi lity is over, use context managers here
     #       and in all subsequent tests for assertRaises
 
     def test_delete_unsaved_task(self):
     #       and in all subsequent tests for assertRaises
 
     def test_delete_unsaved_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         self.assertRaises(Task.NotSaved, t.delete)
 
     def test_complete_unsaved_task(self):
         self.assertRaises(Task.NotSaved, t.delete)
 
     def test_complete_unsaved_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         self.assertRaises(Task.NotSaved, t.done)
 
     def test_refresh_unsaved_task(self):
         self.assertRaises(Task.NotSaved, t.done)
 
     def test_refresh_unsaved_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         self.assertRaises(Task.NotSaved, t.refresh)
 
     def test_start_unsaved_task(self):
         self.assertRaises(Task.NotSaved, t.refresh)
 
     def test_start_unsaved_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         self.assertRaises(Task.NotSaved, t.start)
 
     def test_delete_deleted_task(self):
         self.assertRaises(Task.NotSaved, t.start)
 
     def test_delete_deleted_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.delete()
 
         self.assertRaises(Task.DeletedTask, t.delete)
 
     def test_complete_completed_task(self):
         t.save()
         t.delete()
 
         self.assertRaises(Task.DeletedTask, t.delete)
 
     def test_complete_completed_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.done()
 
         self.assertRaises(Task.CompletedTask, t.done)
 
     def test_start_completed_task(self):
         t.save()
         t.done()
 
         self.assertRaises(Task.CompletedTask, t.done)
 
     def test_start_completed_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.done()
 
         self.assertRaises(Task.CompletedTask, t.start)
 
     def test_add_completed_task(self):
         t.save()
         t.done()
 
         self.assertRaises(Task.CompletedTask, t.start)
 
     def test_add_completed_task(self):
-        t = Task(self.tw, description="test", status="completed",
-                 end=datetime.datetime.now())
+        t = Task(
+            self.tw,
+            description='test',
+            status='completed',
+            end=datetime.datetime.now(),
+        )
         t.save()
 
     def test_add_multiple_completed_tasks(self):
         t.save()
 
     def test_add_multiple_completed_tasks(self):
-        t1 = Task(self.tw, description="test1", status="completed",
-                  end=datetime.datetime.now())
-        t2 = Task(self.tw, description="test2", status="completed",
-                  end=datetime.datetime.now())
+        t1 = Task(
+            self.tw,
+            description='test1',
+            status='completed',
+            end=datetime.datetime.now(),
+        )
+        t2 = Task(
+            self.tw,
+            description='test2',
+            status='completed',
+            end=datetime.datetime.now(),
+        )
         t1.save()
         t2.save()
 
     def test_complete_deleted_task(self):
         t1.save()
         t2.save()
 
     def test_complete_deleted_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.delete()
 
         self.assertRaises(Task.DeletedTask, t.done)
 
     def test_starting_task(self):
         t.save()
         t.delete()
 
         self.assertRaises(Task.DeletedTask, t.done)
 
     def test_starting_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         now = t.datetime_normalizer(datetime.datetime.now())
         t.save()
         t.start()
         now = t.datetime_normalizer(datetime.datetime.now())
         t.save()
         t.start()
         self.assertEqual(t['status'], 'pending')
 
     def test_completing_task(self):
         self.assertEqual(t['status'], 'pending')
 
     def test_completing_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         now = t.datetime_normalizer(datetime.datetime.now())
         t.save()
         t.done()
         now = t.datetime_normalizer(datetime.datetime.now())
         t.save()
         t.done()
         self.assertEqual(t['status'], 'completed')
 
     def test_deleting_task(self):
         self.assertEqual(t['status'], 'completed')
 
     def test_deleting_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         now = t.datetime_normalizer(datetime.datetime.now())
         t.save()
         t.delete()
         now = t.datetime_normalizer(datetime.datetime.now())
         t.save()
         t.delete()
         self.assertEqual(t['status'], 'deleted')
 
     def test_started_task_active(self):
         self.assertEqual(t['status'], 'deleted')
 
     def test_started_task_active(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.start()
         self.assertTrue(t.active)
 
     def test_unstarted_task_inactive(self):
         t.save()
         t.start()
         self.assertTrue(t.active)
 
     def test_unstarted_task_inactive(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         self.assertFalse(t.active)
         t.save()
         self.assertFalse(t.active)
 
     def test_start_active_task(self):
         self.assertFalse(t.active)
         t.save()
         self.assertFalse(t.active)
 
     def test_start_active_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.start()
         self.assertRaises(Task.ActiveTask, t.start)
 
     def test_stop_completed_task(self):
         t.save()
         t.start()
         self.assertRaises(Task.ActiveTask, t.start)
 
     def test_stop_completed_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.start()
         t.done()
 
         self.assertRaises(Task.InactiveTask, t.stop)
 
         t.save()
         t.start()
         t.done()
 
         self.assertRaises(Task.InactiveTask, t.stop)
 
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.done()
 
         self.assertRaises(Task.InactiveTask, t.stop)
 
     def test_stop_deleted_task(self):
         t.save()
         t.done()
 
         self.assertRaises(Task.InactiveTask, t.stop)
 
     def test_stop_deleted_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.start()
         t.delete()
         t.stop()
 
     def test_stop_inactive_task(self):
         t.save()
         t.start()
         t.delete()
         t.stop()
 
     def test_stop_inactive_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
 
         self.assertRaises(Task.InactiveTask, t.stop)
 
         t.save()
 
         self.assertRaises(Task.InactiveTask, t.stop)
 
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.start()
         t.stop()
         t.save()
         t.start()
         t.stop()
         self.assertRaises(Task.InactiveTask, t.stop)
 
     def test_stopping_task(self):
         self.assertRaises(Task.InactiveTask, t.stop)
 
     def test_stopping_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.datetime_normalizer(datetime.datetime.now())
         t.save()
         t.start()
         t.datetime_normalizer(datetime.datetime.now())
         t.save()
         t.start()
         self.assertFalse(t.active)
 
     def test_modify_simple_attribute_without_space(self):
         self.assertFalse(t.active)
 
     def test_modify_simple_attribute_without_space(self):
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
-        self.assertEquals(t['description'], "test" )
+        self.assertEquals(t['description'], 'test' )
-        t['description'] = "test-modified" 
+        t['description'] = 'test-modified' 
-        self.assertEquals(t['description'], "test-modified" )
+        self.assertEquals(t['description'], 'test-modified' )
 
     def test_modify_simple_attribute_with_space(self):
         # Space can pose problems with parsing
 
     def test_modify_simple_attribute_with_space(self):
         # Space can pose problems with parsing
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
-        self.assertEquals(t['description'], "test task" )
+        self.assertEquals(t['description'], 'test task' )
-        t['description'] = "test task modified" 
+        t['description'] = 'test task modified' 
-        self.assertEquals(t['description'], "test task modified" )
+        self.assertEquals(t['description'], 'test task modified' )
 
     def test_empty_dependency_set_of_unsaved_task(self):
 
     def test_empty_dependency_set_of_unsaved_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         self.assertEqual(t['depends'], set())
 
     def test_empty_dependency_set_of_saved_task(self):
         self.assertEqual(t['depends'], set())
 
     def test_empty_dependency_set_of_saved_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         self.assertEqual(t['depends'], set())
 
     def test_set_unsaved_task_as_dependency(self):
         # Adds only one dependency to task with no dependencies
         t.save()
         self.assertEqual(t['depends'], set())
 
     def test_set_unsaved_task_as_dependency(self):
         # Adds only one dependency to task with no dependencies
-        t = Task(self.tw, description="test task" )
-        dependency = Task(self.tw, description="needs to be done first" )
+        t = Task(self.tw, description='test task' )
+        dependency = Task(self.tw, description='needs to be done first' )
 
         # We only save the parent task, dependency task is unsaved
         t.save()
 
         # We only save the parent task, dependency task is unsaved
         t.save()
 
     def test_set_simple_dependency_set(self):
         # Adds only one dependency to task with no dependencies
 
     def test_set_simple_dependency_set(self):
         # Adds only one dependency to task with no dependencies
-        t = Task(self.tw, description="test task" )
-        dependency = Task(self.tw, description="needs to be done first" )
+        t = Task(self.tw, description='test task' )
+        dependency = Task(self.tw, description='needs to be done first' )
 
         t.save()
         dependency.save()
 
         t.save()
         dependency.save()
 
     def test_set_complex_dependency_set(self):
         # Adds two dependencies to task with no dependencies
 
     def test_set_complex_dependency_set(self):
         # Adds two dependencies to task with no dependencies
-        t = Task(self.tw, description="test task" )
-        dependency1 = Task(self.tw, description="needs to be done first" )
-        dependency2 = Task(self.tw, description="needs to be done second" )
+        t = Task(self.tw, description='test task' )
+        dependency1 = Task(self.tw, description='needs to be done first' )
+        dependency2 = Task(self.tw, description='needs to be done second' )
 
         t.save()
         dependency1.save()
 
         t.save()
         dependency1.save()
 
     def test_remove_from_dependency_set(self):
         # Removes dependency from task with two dependencies
 
     def test_remove_from_dependency_set(self):
         # Removes dependency from task with two dependencies
-        t = Task(self.tw, description="test task" )
-        dependency1 = Task(self.tw, description="needs to be done first" )
-        dependency2 = Task(self.tw, description="needs to be done second" )
+        t = Task(self.tw, description='test task' )
+        dependency1 = Task(self.tw, description='needs to be done first' )
+        dependency2 = Task(self.tw, description='needs to be done second' )
 
         dependency1.save()
         dependency2.save()
 
         dependency1.save()
         dependency2.save()
 
     def test_add_to_dependency_set(self):
         # Adds dependency to task with one dependencies
 
     def test_add_to_dependency_set(self):
         # Adds dependency to task with one dependencies
-        t = Task(self.tw, description="test task" )
-        dependency1 = Task(self.tw, description="needs to be done first" )
-        dependency2 = Task(self.tw, description="needs to be done second" )
+        t = Task(self.tw, description='test task' )
+        dependency1 = Task(self.tw, description='needs to be done first' )
+        dependency2 = Task(self.tw, description='needs to be done second' )
 
         dependency1.save()
         dependency2.save()
 
         dependency1.save()
         dependency2.save()
 
     def test_add_to_empty_dependency_set(self):
         # Adds dependency to task with one dependencies
 
     def test_add_to_empty_dependency_set(self):
         # Adds dependency to task with one dependencies
-        t = Task(self.tw, description="test task" )
-        dependency = Task(self.tw, description="needs to be done first" )
+        t = Task(self.tw, description='test task' )
+        dependency = Task(self.tw, description='needs to be done first' )
 
     def test_simple_dependency_set_save_repeatedly(self):
         # Adds only one dependency to task with no dependencies
 
     def test_simple_dependency_set_save_repeatedly(self):
         # Adds only one dependency to task with no dependencies
-        t = Task(self.tw, description="test task" )
-        dependency = Task(self.tw, description="needs to be done first" )
+        t = Task(self.tw, description='test task' )
+        dependency = Task(self.tw, description='needs to be done first' )
         dependency.save()
 
         t['depends'] = set([dependency])
         t.save()
 
         # We taint the task, but keep depends intact
         dependency.save()
 
         t['depends'] = set([dependency])
         t.save()
 
         # We taint the task, but keep depends intact
-        t['description'] = "test task modified" 
+        t['description'] = 'test task modified' 
         t.save()
 
         self.assertEqual(t['depends'], set([dependency]))
 
         # We taint the task, but assign the same set to the depends
         t['depends'] = set([dependency])
         t.save()
 
         self.assertEqual(t['depends'], set([dependency]))
 
         # We taint the task, but assign the same set to the depends
         t['depends'] = set([dependency])
-        t['description'] = "test task modified again" 
+        t['description'] = 'test task modified again' 
         t.save()
 
         self.assertEqual(t['depends'], set([dependency]))
 
     def test_compare_different_tasks(self):
         # Negative: compare two different tasks
         t.save()
 
         self.assertEqual(t['depends'], set([dependency]))
 
     def test_compare_different_tasks(self):
         # Negative: compare two different tasks
-        t1 = Task(self.tw, description="test task" )
-        t2 = Task(self.tw, description="test task" )
+        t1 = Task(self.tw, description='test task' )
+        t2 = Task(self.tw, description='test task' )
 
     def test_compare_same_task_object(self):
         # Compare Task object wit itself
 
     def test_compare_same_task_object(self):
         # Compare Task object wit itself
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
 
         self.assertEqual(t == t, True)
 
     def test_compare_same_task(self):
         # Compare the same task using two different objects
         t.save()
 
         self.assertEqual(t == t, True)
 
     def test_compare_same_task(self):
         # Compare the same task using two different objects
-        t1 = Task(self.tw, description="test task" )
+        t1 = Task(self.tw, description='test task' )
         t1.save()
 
         t2 = self.tw.tasks.get(uuid=t1['uuid'])
         t1.save()
 
         t2 = self.tw.tasks.get(uuid=t1['uuid'])
     def test_compare_unsaved_tasks(self):
         # t1 and t2 are unsaved tasks, considered to be unequal
         # despite the content of data
     def test_compare_unsaved_tasks(self):
         # t1 and t2 are unsaved tasks, considered to be unequal
         # despite the content of data
-        t1 = Task(self.tw, description="test task" )
-        t2 = Task(self.tw, description="test task" )
+        t1 = Task(self.tw, description='test task' )
+        t2 = Task(self.tw, description='test task' )
 
         self.assertEqual(t1 == t2, False)
 
     def test_hash_unsaved_tasks(self):
         # Considered equal, it's the same object
 
         self.assertEqual(t1 == t2, False)
 
     def test_hash_unsaved_tasks(self):
         # Considered equal, it's the same object
-        t1 = Task(self.tw, description="test task" )
+        t1 = Task(self.tw, description='test task' )
         t2 = t1
         self.assertEqual(hash(t1) == hash(t2), True)
 
     def test_hash_same_task(self):
         # Compare the hash of the task using two different objects
         t2 = t1
         self.assertEqual(hash(t1) == hash(t2), True)
 
     def test_hash_same_task(self):
         # Compare the hash of the task using two different objects
-        t1 = Task(self.tw, description="test task" )
+        t1 = Task(self.tw, description='test task' )
         t1.save()
 
         t2 = self.tw.tasks.get(uuid=t1['uuid'])
         t1.save()
 
         t2 = self.tw.tasks.get(uuid=t1['uuid'])
 
     def test_hash_unequal_unsaved_tasks(self):
         # Compare the hash of the task using two different objects
 
     def test_hash_unequal_unsaved_tasks(self):
         # Compare the hash of the task using two different objects
-        t1 = Task(self.tw, description="test task 1" )
-        t2 = Task(self.tw, description="test task 2" )
+        t1 = Task(self.tw, description='test task 1' )
+        t2 = Task(self.tw, description='test task 2' )
 
         self.assertNotEqual(t1.__hash__(), t2.__hash__())
 
     def test_hash_unequal_saved_tasks(self):
         # Compare the hash of the task using two different objects
 
         self.assertNotEqual(t1.__hash__(), t2.__hash__())
 
     def test_hash_unequal_saved_tasks(self):
         # Compare the hash of the task using two different objects
-        t1 = Task(self.tw, description="test task 1" )
-        t2 = Task(self.tw, description="test task 2" )
+        t1 = Task(self.tw, description='test task 1' )
+        t2 = Task(self.tw, description='test task 2' )
         self.assertNotEqual(t1.__hash__(), t2.__hash__())
 
     def test_adding_task_with_priority(self):
         self.assertNotEqual(t1.__hash__(), t2.__hash__())
 
     def test_adding_task_with_priority(self):
-        t = Task(self.tw, description="test task", priority="M" )
+        t = Task(self.tw, description='test task', priority='M' )
         t.save()
 
     def test_removing_priority_with_none(self):
         t.save()
 
     def test_removing_priority_with_none(self):
-        t = Task(self.tw, description="test task", priority="L" )
+        t = Task(self.tw, description='test task', priority='L' )
         t.save()
 
         # Remove the priority mark
         t.save()
 
         # Remove the priority mark
         self.assertEqual(t['priority'], None)
 
     def test_adding_task_with_due_time(self):
         self.assertEqual(t['priority'], None)
 
     def test_adding_task_with_due_time(self):
-        t = Task(self.tw, description="test task" , due=datetime.datetime.now())
+        t = Task(self.tw, description='test task' , due=datetime.datetime.now())
         t.save()
 
     def test_removing_due_time_with_none(self):
         t.save()
 
     def test_removing_due_time_with_none(self):
-        t = Task(self.tw, description="test task" , due=datetime.datetime.now())
+        t = Task(self.tw, description='test task' , due=datetime.datetime.now())
         t.save()
 
         # Remove the due timestamp
         t.save()
 
         # Remove the due timestamp
         self.assertEqual(set(t._modified_fields), set())
 
         # Modify the task
         self.assertEqual(set(t._modified_fields), set())
 
         # Modify the task
-        t['description'] = "test task" 
+        t['description'] = 'test task' 
         self.assertEqual(set(t._modified_fields), set(['description']))
 
         t['due'] = datetime.datetime(2014, 2, 14, 14, 14, 14)  # <3
         self.assertEqual(set(t._modified_fields), set(['description', 'due']))
 
         self.assertEqual(set(t._modified_fields), set(['description']))
 
         t['due'] = datetime.datetime(2014, 2, 14, 14, 14, 14)  # <3
         self.assertEqual(set(t._modified_fields), set(['description', 'due']))
 
-        t['project'] = "test project"
-        self.assertEqual(set(t._modified_fields),
-                         set(['description', 'due', 'project']))
+        t['project'] = 'test project'
+        self.assertEqual(
+            set(t._modified_fields),
+            set(['description', 'due', 'project']),
+        )
 
         # List of modified fields should clear out when saved
         t.save()
 
         # List of modified fields should clear out when saved
         t.save()
 
         # Reassigning the fields with the same values now should not produce
         # modified fields
 
         # Reassigning the fields with the same values now should not produce
         # modified fields
-        t['description'] = "test task" 
+        t['description'] = 'test task' 
         t['due'] = datetime.datetime(2014, 2, 14, 14, 14, 14)  # <3
         t['due'] = datetime.datetime(2014, 2, 14, 14, 14, 14)  # <3
-        t['project'] = "test project" 
+        t['project'] = 'test project' 
         self.assertEqual(set(t._modified_fields), set())
 
     def test_modified_fields_loaded_task(self):
         t = Task(self.tw)
 
         # Modify the task
         self.assertEqual(set(t._modified_fields), set())
 
     def test_modified_fields_loaded_task(self):
         t = Task(self.tw)
 
         # Modify the task
-        t['description'] = "test task" 
+        t['description'] = 'test task' 
         t['due'] = datetime.datetime(2014, 2, 14, 14, 14, 14)  # <3
         t['due'] = datetime.datetime(2014, 2, 14, 14, 14, 14)  # <3
-        t['project'] = "test project" 
+        t['project'] = 'test project' 
-        dependency = Task(self.tw, description="dependency" )
+        dependency = Task(self.tw, description='dependency' )
         dependency.save()
         t['depends'] = set([dependency])
 
         dependency.save()
         t['depends'] = set([dependency])
 
 
         # Reassigning the fields with the same values now should not produce
         # modified fields
 
         # Reassigning the fields with the same values now should not produce
         # modified fields
-        t['description'] = "test task" 
+        t['description'] = 'test task' 
         t['due'] = datetime.datetime(2014, 2, 14, 14, 14, 14)  # <3
         t['due'] = datetime.datetime(2014, 2, 14, 14, 14, 14)  # <3
-        t['project'] = "test project" 
+        t['project'] = 'test project' 
         t['depends'] = set([dependency])
         self.assertEqual(set(t._modified_fields), set())
 
         t['depends'] = set([dependency])
         self.assertEqual(set(t._modified_fields), set())
 
         # Test that we are unable to set readonly attrs through __init__
         for readonly_key in Task.read_only_fields:
             kwargs = {'description': 'test task', readonly_key: 'value'}
         # Test that we are unable to set readonly attrs through __init__
         for readonly_key in Task.read_only_fields:
             kwargs = {'description': 'test task', readonly_key: 'value'}
-            self.assertRaises(RuntimeError,
-                              lambda: Task(self.tw, **kwargs))
+            self.assertRaises(
+                RuntimeError,
+                lambda: Task(self.tw, **kwargs),
+            )
 
     def test_setting_read_only_attrs_through_setitem(self):
         # Test that we are unable to set readonly attrs through __init__
         for readonly_key in Task.read_only_fields:
             t = Task(self.tw, description='test task')
 
     def test_setting_read_only_attrs_through_setitem(self):
         # Test that we are unable to set readonly attrs through __init__
         for readonly_key in Task.read_only_fields:
             t = Task(self.tw, description='test task')
-            self.assertRaises(RuntimeError,
-                              lambda: t.__setitem__(readonly_key, 'value'))
+            self.assertRaises(
+                RuntimeError,
+                lambda: t.__setitem__(readonly_key, 'value'),
+            )
 
     def test_saving_unmodified_task(self):
 
     def test_saving_unmodified_task(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t.save()
 
     def test_adding_tag_by_appending(self):
         t.save()
         t.save()
 
     def test_adding_tag_by_appending(self):
-        t = Task(self.tw, description="test task" , tags=['test1'])
+        t = Task(self.tw, description='test task' , tags=['test1'])
         t.save()
         t['tags'].add('test2')
         t.save()
         self.assertEqual(t['tags'], set(['test1', 'test2']))
 
     def test_adding_tag_twice(self):
         t.save()
         t['tags'].add('test2')
         t.save()
         self.assertEqual(t['tags'], set(['test1', 'test2']))
 
     def test_adding_tag_twice(self):
-        t = Task(self.tw, description="test task" , tags=['test1'])
+        t = Task(self.tw, description='test task' , tags=['test1'])
         t.save()
         t['tags'].add('test2')
         t['tags'].add('test2')
         t.save()
         t['tags'].add('test2')
         t['tags'].add('test2')
         self.assertEqual(t['tags'], set(['test1', 'test2']))
 
     def test_adding_tag_by_appending_empty(self):
         self.assertEqual(t['tags'], set(['test1', 'test2']))
 
     def test_adding_tag_by_appending_empty(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t.save()
         t['tags'].add('test')
         t.save()
         t.save()
         t['tags'].add('test')
         t.save()
     def test_serializers_returning_empty_string_for_none(self):
         # Test that any serializer returns '' when passed None
         t = Task(self.tw)
     def test_serializers_returning_empty_string_for_none(self):
         # Test that any serializer returns '' when passed None
         t = Task(self.tw)
-        serializers = [getattr(t, serializer_name) for serializer_name in
-                       filter(lambda x: x.startswith('serialize_'), dir(t))]
+        serializers = [
+            getattr(t, serializer_name)
+            for serializer_name in filter(
+                lambda x: x.startswith('serialize_'),
+                dir(t),
+            )
+        ]
         for serializer in serializers:
             self.assertEqual(serializer(None), '')
 
     def test_deserializer_returning_empty_value_for_empty_string(self):
         # Test that any deserializer returns empty value when passed ''
         t = Task(self.tw)
         for serializer in serializers:
             self.assertEqual(serializer(None), '')
 
     def test_deserializer_returning_empty_value_for_empty_string(self):
         # Test that any deserializer returns empty value when passed ''
         t = Task(self.tw)
-        deserializers = [getattr(t, deserializer_name) for deserializer_name in
-                         filter(lambda x: x.startswith('deserialize_'), dir(t))]
+        deserializers = [
+            getattr(t, deserializer_name)
+            for deserializer_name in filter(
+                lambda x: x.startswith('deserialize_'),
+                dir(t),
+            )
+        ]
         for deserializer in deserializers:
             self.assertTrue(deserializer('') in (None, [], set()))
 
         for deserializer in deserializers:
             self.assertTrue(deserializer('') in (None, [], set()))
 
 
     def test_recurrent_task_generation(self):
         today = datetime.date.today()
 
     def test_recurrent_task_generation(self):
         today = datetime.date.today()
-        t = Task(self.tw, description="brush teeth",
-                 due=today, recur="daily")
+        t = Task(
+            self.tw,
+            description='brush teeth',
+            due=today,
+            recur='daily',
+        )
         t.save()
         self.assertEqual(len(self.tw.tasks.pending()), 2)
 
     def test_spawned_task_parent(self):
         today = datetime.date.today()
         t.save()
         self.assertEqual(len(self.tw.tasks.pending()), 2)
 
     def test_spawned_task_parent(self):
         today = datetime.date.today()
-        t = Task(self.tw, description="brush teeth",
-                 due=today, recur="daily")
+        t = Task(
+            self.tw,
+            description='brush teeth',
+            due=today,
+            recur='daily',
+        )
         t.save()
 
         spawned = self.tw.tasks.pending().get(due=today)
         t.save()
 
         spawned = self.tw.tasks.pending().get(due=today)
 
     def test_modify_number_of_tasks_at_once(self):
         for i in range(1, 100):
 
     def test_modify_number_of_tasks_at_once(self):
         for i in range(1, 100):
-            Task(self.tw, description="test task %d"  % i, tags=['test']).save()
+            Task(self.tw, description='test task %d'  % i, tags=['test']).save()
 
         self.tw.execute_command(['+test', 'mod', 'unified', 'description'])
 
     def test_return_all_from_executed_command(self):
 
         self.tw.execute_command(['+test', 'mod', 'unified', 'description'])
 
     def test_return_all_from_executed_command(self):
-        Task(self.tw, description="test task" , tags=['test']).save()
+        Task(self.tw, description='test task' , tags=['test']).save()
         out, err, rc = self.tw.execute_command(['count'], return_all=True)
         self.assertEqual(rc, 0)
 
     def test_return_all_from_failed_executed_command(self):
         out, err, rc = self.tw.execute_command(['count'], return_all=True)
         self.assertEqual(rc, 0)
 
     def test_return_all_from_failed_executed_command(self):
-        Task(self.tw, description="test task", tags=['test']).save()
-        out, err, rc = self.tw.execute_command(['countinvalid'],
-                                               return_all=True,
-                                               allow_failure=False)
+        Task(self.tw, description='test task', tags=['test']).save()
+        out, err, rc = self.tw.execute_command(
+            ['countinvalid'],
+            return_all=True,
+            allow_failure=False,
+        )
         self.assertNotEqual(rc, 0)
 
 
         self.assertNotEqual(rc, 0)
 
 
         '"entry":"20141118T050231Z",'
         '"status":"pending",'
         '"start":"20141119T152233Z",'
         '"entry":"20141118T050231Z",'
         '"status":"pending",'
         '"start":"20141119T152233Z",'
-        '"uuid":"a360fc44-315c-4366-b70c-ea7e7520b749"}')
+        '"uuid":"a360fc44-315c-4366-b70c-ea7e7520b749"}',
+    )
 
     input_add_data_recurring = six.StringIO(
         '{"description":"Mow the lawn",'
 
     input_add_data_recurring = six.StringIO(
         '{"description":"Mow the lawn",'
         '"parent":"62da6227-519c-42c2-915d-dccada926ad7",'
         '"recur":"weekly",'
         '"status":"pending",'
         '"parent":"62da6227-519c-42c2-915d-dccada926ad7",'
         '"recur":"weekly",'
         '"status":"pending",'
-        '"uuid":"81305335-0237-49ff-8e87-b3cdc2369cec"}')
+        '"uuid":"81305335-0237-49ff-8e87-b3cdc2369cec"}',
+    )
 
     input_modify_data = six.StringIO(
 
     input_modify_data = six.StringIO(
-        input_add_data.getvalue() + '\n' +
-        '{"description":"Buy some milk finally",'
-        '"entry":"20141118T050231Z",'
-        '"status":"completed",'
-        '"uuid":"a360fc44-315c-4366-b70c-ea7e7520b749"}')
+        '\n'.join([
+            input_add_data.getvalue(),
+            (
+                '{"description":"Buy some milk finally",'
+                '"entry":"20141118T050231Z",'
+                '"status":"completed",'
+                '"uuid":"a360fc44-315c-4366-b70c-ea7e7520b749"}'
+            ),
+        ]),
+    )
 
     exported_raw_data = (
         '{"project":"Home",'
         '"due":"20150101T232323Z",'
 
     exported_raw_data = (
         '{"project":"Home",'
         '"due":"20150101T232323Z",'
-        '"description":"test task"}')
+        '"description":"test task"}'
+    )
 
     def test_setting_up_from_add_hook_input(self):
         t = Task.from_input(input_file=self.input_add_data, backend=self.tw)
 
     def test_setting_up_from_add_hook_input(self):
         t = Task.from_input(input_file=self.input_add_data, backend=self.tw)
-        self.assertEqual(t['description'], "Buy some milk" )
+        self.assertEqual(t['description'], 'Buy some milk' )
         self.assertEqual(t.pending, True)
 
     def test_setting_up_from_add_hook_input_recurring(self):
         self.assertEqual(t.pending, True)
 
     def test_setting_up_from_add_hook_input_recurring(self):
-        t = Task.from_input(input_file=self.input_add_data_recurring,
-                            backend=self.tw)
-        self.assertEqual(t['description'], "Mow the lawn")
+        t = Task.from_input(
+            input_file=self.input_add_data_recurring,
+            backend=self.tw,
+        )
+        self.assertEqual(t['description'], 'Mow the lawn')
         self.assertEqual(t.pending, True)
 
     def test_setting_up_from_modified_hook_input(self):
         self.assertEqual(t.pending, True)
 
     def test_setting_up_from_modified_hook_input(self):
-        t = Task.from_input(input_file=self.input_modify_data, modify=True,
-                            backend=self.tw)
-        self.assertEqual(t['description'], "Buy some milk finally")
+        t = Task.from_input(
+            input_file=self.input_modify_data,
+            modify=True,
+            backend=self.tw,
+        )
+        self.assertEqual(t['description'], 'Buy some milk finally')
         self.assertEqual(t.pending, False)
         self.assertEqual(t.completed, True)
 
         self.assertEqual(t.pending, False)
         self.assertEqual(t.completed, True)
 
-        self.assertEqual(t._original_data['status'], "pending")
-        self.assertEqual(t._original_data['description'], "Buy some milk")
-        self.assertEqual(set(t._modified_fields),
-                         set(['status', 'description', 'start']))
+        self.assertEqual(t._original_data['status'], 'pending')
+        self.assertEqual(t._original_data['description'], 'Buy some milk')
+        self.assertEqual(
+            set(t._modified_fields),
+            set(['status', 'description', 'start']),
+        )
 
     def test_export_data(self):
 
     def test_export_data(self):
-        t = Task(self.tw, description="test task",
-                 project="Home",
-                 due=pytz.utc.localize(datetime.datetime(2015, 1, 1,
-                                                         23, 23, 23)))
+        t = Task(
+            self.tw,
+            description='test task',
+            project='Home',
+            due=pytz.utc.localize(
+                datetime.datetime(2015, 1, 1, 23, 23, 23)),
+        )
 
         # Check that the output is a permutation of:
         # {"project":"Home","description":"test task","due":"20150101232323Z"}
 
         # Check that the output is a permutation of:
         # {"project":"Home","description":"test task","due":"20150101232323Z"}
             for segments in itertools.permutations(allowed_segments)
         ]
 
             for segments in itertools.permutations(allowed_segments)
         ]
 
-        self.assertTrue(any(t.export_data() == expected
-                            for expected in allowed_output))
+        self.assertTrue(
+            any(t.export_data() == expected
+                for expected in allowed_output),
+        )
 
 
 class TimezoneAwareDatetimeTest(TasklibTest):
 
 
 class TimezoneAwareDatetimeTest(TasklibTest):
         self.utctime_aware = self.localtime_aware.astimezone(pytz.utc)
 
     def test_timezone_naive_datetime_setitem(self):
         self.utctime_aware = self.localtime_aware.astimezone(pytz.utc)
 
     def test_timezone_naive_datetime_setitem(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t['due'] = self.localtime_naive
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_timezone_naive_datetime_using_init(self):
         t['due'] = self.localtime_naive
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_timezone_naive_datetime_using_init(self):
-        t = Task(self.tw, description="test task" , due=self.localtime_naive)
+        t = Task(self.tw, description='test task' , due=self.localtime_naive)
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_filter_by_naive_datetime(self):
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_filter_by_naive_datetime(self):
-        t = Task(self.tw, description="task1" , due=self.localtime_naive)
+        t = Task(self.tw, description='task1' , due=self.localtime_naive)
         t.save()
         matching_tasks = self.tw.tasks.filter(due=self.localtime_naive)
         self.assertEqual(len(matching_tasks), 1)
 
     def test_serialize_naive_datetime(self):
         t.save()
         matching_tasks = self.tw.tasks.filter(due=self.localtime_naive)
         self.assertEqual(len(matching_tasks), 1)
 
     def test_serialize_naive_datetime(self):
-        t = Task(self.tw, description="task1", due=self.localtime_naive)
-        self.assertEqual(json.loads(t.export_data())['due'],
-                         self.utctime_aware.strftime(DATE_FORMAT))
+        t = Task(self.tw, description='task1', due=self.localtime_naive)
+        self.assertEqual(
+            json.loads(t.export_data())['due'],
+            self.utctime_aware.strftime(DATE_FORMAT),
+        )
 
     def test_timezone_naive_date_setitem(self):
 
     def test_timezone_naive_date_setitem(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t['due'] = self.localdate_naive
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_timezone_naive_date_using_init(self):
         t['due'] = self.localdate_naive
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_timezone_naive_date_using_init(self):
-        t = Task(self.tw, description="test task" , due=self.localdate_naive)
+        t = Task(self.tw, description='test task' , due=self.localdate_naive)
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_filter_by_naive_date(self):
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_filter_by_naive_date(self):
-        t = Task(self.tw, description="task1" , due=self.localdate_naive)
+        t = Task(self.tw, description='task1' , due=self.localdate_naive)
         t.save()
         matching_tasks = self.tw.tasks.filter(due=self.localdate_naive)
         self.assertEqual(len(matching_tasks), 1)
 
     def test_serialize_naive_date(self):
         t.save()
         matching_tasks = self.tw.tasks.filter(due=self.localdate_naive)
         self.assertEqual(len(matching_tasks), 1)
 
     def test_serialize_naive_date(self):
-        t = Task(self.tw, description="task1", due=self.localdate_naive)
-        self.assertEqual(json.loads(t.export_data())['due'],
-                         self.utctime_aware.strftime(DATE_FORMAT))
+        t = Task(self.tw, description='task1', due=self.localdate_naive)
+        self.assertEqual(
+            json.loads(t.export_data())['due'],
+            self.utctime_aware.strftime(DATE_FORMAT),
+        )
 
     def test_timezone_aware_datetime_setitem(self):
 
     def test_timezone_aware_datetime_setitem(self):
-        t = Task(self.tw, description="test task" )
+        t = Task(self.tw, description='test task' )
         t['due'] = self.localtime_aware
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_timezone_aware_datetime_using_init(self):
         t['due'] = self.localtime_aware
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_timezone_aware_datetime_using_init(self):
-        t = Task(self.tw, description="test task" , due=self.localtime_aware)
+        t = Task(self.tw, description='test task' , due=self.localtime_aware)
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_filter_by_aware_datetime(self):
         self.assertEqual(t['due'], self.localtime_aware)
 
     def test_filter_by_aware_datetime(self):
-        t = Task(self.tw, description="task1" , due=self.localtime_aware)
+        t = Task(self.tw, description='task1' , due=self.localtime_aware)
         t.save()
         matching_tasks = self.tw.tasks.filter(due=self.localtime_aware)
         self.assertEqual(len(matching_tasks), 1)
 
     def test_serialize_aware_datetime(self):
         t.save()
         matching_tasks = self.tw.tasks.filter(due=self.localtime_aware)
         self.assertEqual(len(matching_tasks), 1)
 
     def test_serialize_aware_datetime(self):
-        t = Task(self.tw, description="task1", due=self.localtime_aware)
-        self.assertEqual(json.loads(t.export_data())['due'],
-                         self.utctime_aware.strftime(DATE_FORMAT))
+        t = Task(self.tw, description='task1', due=self.localtime_aware)
+        self.assertEqual(
+            json.loads(t.export_data())['due'],
+            self.utctime_aware.strftime(DATE_FORMAT),
+        )
 
 
 class DatetimeStringTest(TasklibTest):
 
 
 class DatetimeStringTest(TasklibTest):
-        t = Task(self.tw, description="test task", due="now" )
+        t = Task(self.tw, description='test task', due='now' )
         now = local_zone.localize(datetime.datetime.now())
 
         # Assert that both times are not more than 5 seconds apart
         now = local_zone.localize(datetime.datetime.now())
 
         # Assert that both times are not more than 5 seconds apart
-        t = Task(self.tw, description="test task", due="eoy" )
+        t = Task(self.tw, description='test task', due='eoy' )
         now = local_zone.localize(datetime.datetime.now())
         eoy = local_zone.localize(datetime.datetime(
             year=now.year,
         now = local_zone.localize(datetime.datetime.now())
         eoy = local_zone.localize(datetime.datetime(
             year=now.year,
             day=31,
             hour=23,
             minute=59,
             day=31,
             hour=23,
             minute=59,
             ))
         self.assertEqual(eoy, t['due'])
 
             ))
         self.assertEqual(eoy, t['due'])
 
-        t = Task(self.tw, description="test task", due="eoy - 4 months" )
+        t = Task(self.tw, description='test task', due='eoy - 4 months' )
         now = local_zone.localize(datetime.datetime.now())
         now = local_zone.localize(datetime.datetime.now())
-        due_date = local_zone.localize(datetime.datetime(
-            year=now.year,
-            month=12,
-            day=31,
-            hour=23,
-            minute=59,
-            second=59
-            )) - datetime.timedelta(0, 4 * 30 * 86400)
+        due_date = local_zone.localize(
+            datetime.datetime(
+                year=now.year,
+                month=12,
+                day=31,
+                hour=23,
+                minute=59,
+                second=59,
+            )
+        ) - datetime.timedelta(0, 4 * 30 * 86400)
         self.assertEqual(due_date, t['due'])
 
     def test_filtering_with_string_datetime(self):
         self.assertEqual(due_date, t['due'])
 
     def test_filtering_with_string_datetime(self):
-        t = Task(self.tw, description="test task",
-                 due=datetime.datetime.now() - datetime.timedelta(0, 2))
+        t = Task(
+            self.tw,
+            description='test task',
+            due=datetime.datetime.now() - datetime.timedelta(0, 2),
+        )
-        self.assertEqual(len(self.tw.tasks.filter(due__before="now" )), 1)
+        self.assertEqual(len(self.tw.tasks.filter(due__before='now' )), 1)
 
 
 class AnnotationTest(TasklibTest):
 
     def setUp(self):
         super(AnnotationTest, self).setUp()
 
 
 class AnnotationTest(TasklibTest):
 
     def setUp(self):
         super(AnnotationTest, self).setUp()
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
 
     def test_adding_annotation(self):
         task = self.tw.tasks.get()
 
     def test_adding_annotation(self):
         task = self.tw.tasks.get()
 
     def test_serialize_annotations(self):
         # Test that serializing annotations is possible
 
     def test_serialize_annotations(self):
         # Test that serializing annotations is possible
-        t = Task(self.tw, description="test" )
+        t = Task(self.tw, description='test' )
-        t.add_annotation("annotation1" )
-        t.add_annotation("annotation2" )
+        t.add_annotation('annotation1' )
+        t.add_annotation('annotation2' )
 
         data = t._serialize('annotations', t._data['annotations'])
 
 
         data = t._serialize('annotations', t._data['annotations'])
 
         self.assertEqual(type(data[0]), dict)
         self.assertEqual(type(data[1]), dict)
 
         self.assertEqual(type(data[0]), dict)
         self.assertEqual(type(data[1]), dict)
 
-        self.assertEqual(data[0]['description'], "annotation1" )
-        self.assertEqual(data[1]['description'], "annotation2" )
+        self.assertEqual(data[0]['description'], 'annotation1' )
+        self.assertEqual(data[1]['description'], 'annotation2' )
 
 
 class UnicodeTest(TasklibTest):
 
     def test_unicode_task(self):
 
 
 class UnicodeTest(TasklibTest):
 
     def test_unicode_task(self):
-        Task(self.tw, description=six.u("†åßk" )).save()
+        Task(self.tw, description=six.u('†åßk' )).save()
         self.tw.tasks.get()
 
     def test_filter_by_unicode_task(self):
         self.tw.tasks.get()
 
     def test_filter_by_unicode_task(self):
-        Task(self.tw, description=six.u("†åßk" )).save()
-        tasks = self.tw.tasks.filter(description=six.u("†åßk" ))
+        Task(self.tw, description=six.u('†åßk' )).save()
+        tasks = self.tw.tasks.filter(description=six.u('†åßk' ))
         self.assertEqual(len(tasks), 1)
 
     def test_non_unicode_task(self):
         self.assertEqual(len(tasks), 1)
 
     def test_non_unicode_task(self):
-        Task(self.tw, description="test task" ).save()
+        Task(self.tw, description='test task' ).save()
         self.assertEqual(self.sample, self.original_sample)
 
     def test_readonlydictview_iter(self):
         self.assertEqual(self.sample, self.original_sample)
 
     def test_readonlydictview_iter(self):
-        self.assertEqual(list(key for key in self.view),
-                         list(key for key in self.sample))
+        self.assertEqual(
+            list(key for key in self.view),
+            list(key for key in self.sample),
+        )
 
         # Assert the view is correct after modification
         self.sample['new'] = 'value'
 
         # Assert the view is correct after modification
         self.sample['new'] = 'value'
-        self.assertEqual(list(key for key in self.view),
-                         list(key for key in self.sample))
+        self.assertEqual(
+            list(key for key in self.view),
+            list(key for key in self.sample),
+        )
 
     def test_readonlydictview_len(self):
         self.assertEqual(len(self.view), len(self.sample))
 
     def test_readonlydictview_len(self):
         self.assertEqual(len(self.view), len(self.sample))
     def setUp(self):
         super(LazyUUIDTaskTest, self).setUp()
 
     def setUp(self):
         super(LazyUUIDTaskTest, self).setUp()
 
-        self.stored = Task(self.tw, description="this is test task" )
+        self.stored = Task(self.tw, description='this is test task' )
         self.stored.save()
 
         self.lazy = LazyUUIDTask(self.tw, self.stored['uuid'])
         self.stored.save()
 
         self.lazy = LazyUUIDTask(self.tw, self.stored['uuid'])
     def setUp(self):
         super(LazyUUIDTaskSetTest, self).setUp()
 
     def setUp(self):
         super(LazyUUIDTaskSetTest, self).setUp()
 
-        self.task1 = Task(self.tw, description="task 1" )
-        self.task2 = Task(self.tw, description="task 2" )
-        self.task3 = Task(self.tw, description="task 3" )
+        self.task1 = Task(self.tw, description='task 1' )
+        self.task2 = Task(self.tw, description='task 2' )
+        self.task3 = Task(self.tw, description='task 3' )
 
         self.task1.save()
         self.task2.save()
 
         self.task1.save()
         self.task2.save()
         self.uuids = (
             self.task1['uuid'],
             self.task2['uuid'],
         self.uuids = (
             self.task1['uuid'],
             self.task2['uuid'],
         )
 
         self.lazy = LazyUUIDTaskSet(self.tw, self.uuids)
         )
 
         self.lazy = LazyUUIDTaskSet(self.tw, self.uuids)
         taskset = set([self.task1])
         lazyset = LazyUUIDTaskSet(
             self.tw,
         taskset = set([self.task1])
         lazyset = LazyUUIDTaskSet(
             self.tw,
-            (self.task2['uuid'], self.task3['uuid'])
+            (self.task2['uuid'], self.task3['uuid']), 
         )
 
         assert taskset | lazyset == self.lazy
         )
 
         assert taskset | lazyset == self.lazy
         taskset = set([self.task1, self.task2])
         lazyset = LazyUUIDTaskSet(
             self.tw,
         taskset = set([self.task1, self.task2])
         lazyset = LazyUUIDTaskSet(
             self.tw,
-            (self.task2['uuid'], self.task3['uuid'])
+            (self.task2['uuid'], self.task3['uuid']), 
         )
 
         assert taskset - lazyset == set([self.task1])
         )
 
         assert taskset - lazyset == set([self.task1])
         taskset = set([self.task1, self.task2])
         lazyset = LazyUUIDTaskSet(
             self.tw,
         taskset = set([self.task1, self.task2])
         lazyset = LazyUUIDTaskSet(
             self.tw,
-            (self.task2['uuid'], self.task3['uuid'])
+            (self.task2['uuid'], self.task3['uuid']), 
         )
 
         assert taskset ^ lazyset == set([self.task1, self.task3])
         assert lazyset ^ taskset == set([self.task1, self.task3])
         )
 
         assert taskset ^ lazyset == set([self.task1, self.task3])
         assert lazyset ^ taskset == set([self.task1, self.task3])
-        assert taskset.symmetric_difference(lazyset) == set([self.task1,
-                                                             self.task3])
-        assert lazyset.symmetric_difference(taskset) == set([self.task1,
-                                                             self.task3])
+        self.assertEqual(
+            taskset.symmetric_difference(lazyset),
+            set([self.task1, self.task3]),
+        )
+        self.assertEqual(
+            lazyset.symmetric_difference(taskset),
+            set([self.task1, self.task3]),
+        )
 
         lazyset ^= taskset
         assert lazyset == set([self.task1, self.task3])
 
         lazyset ^= taskset
         assert lazyset == set([self.task1, self.task3])
         taskset = set([self.task1, self.task2])
         lazyset = LazyUUIDTaskSet(
             self.tw,
         taskset = set([self.task1, self.task2])
         lazyset = LazyUUIDTaskSet(
             self.tw,
-            (self.task2['uuid'], self.task3['uuid'])
+            (self.task2['uuid'], self.task3['uuid']), 
         )
 
         assert taskset & lazyset == set([self.task2])
         )
 
         assert taskset & lazyset == set([self.task2])
 class TaskWarriorBackendTest(TasklibTest):
 
     def test_config(self):
 class TaskWarriorBackendTest(TasklibTest):
 
     def test_config(self):
-        assert self.tw.config['nag'] == "You have more urgent tasks." 
-        assert self.tw.config['default.command'] == "next" 
-        assert self.tw.config['dependency.indicator'] == "D" 
+        assert self.tw.config['nag'] == 'You have more urgent tasks.' 
+        assert self.tw.config['default.command'] == 'next' 
+        assert self.tw.config['dependency.indicator'] == 'D'