      #     # Ensure target 1 is updated, and everything else is as expected
      #     queryset = ForeignKeyTarget.objects.all()
      #     serializer = ForeignKeyTargetSerializer(queryset)
      #     expected = [
      #         {'id': 1, 'name': u'target-1', 'sources': [1]},
      #         {'id': 2, 'name': u'target-2', 'sources': []},
      #     ]
      #     self.assertEquals(serializer.data, expected)
 
</s> remove             {'id': 1, 'name': u'target-1', 'sources': [1]},
            {'id': 2, 'name': u'target-2', 'sources': [2, 3]},
            {'id': 3, 'name': u'target-3', 'sources': [3]}
 </s> add             {'id': 1, 'name': 'target-1', 'sources': [1]},
            {'id': 2, 'name': 'target-2', 'sources': [2, 3]},
            {'id': 3, 'name': 'target-3', 'sources': [3]} </s> remove             {'id': 1, 'name': u'target-1', 'sources': [1, 2, 3]},
            {'id': 2, 'name': u'target-2', 'sources': [2, 3]},
            {'id': 3, 'name': u'target-3', 'sources': [3]},
            {'id': 4, 'name': u'target-4', 'sources': [1, 3]}
 </s> add             {'id': 1, 'name': 'target-1', 'sources': [1, 2, 3]},
            {'id': 2, 'name': 'target-2', 'sources': [2, 3]},
            {'id': 3, 'name': 'target-3', 'sources': [3]},
            {'id': 4, 'name': 'target-4', 'sources': [1, 3]} </s> remove             {'id': 1, 'name': u'source-1', 'target': 2},
            {'id': 2, 'name': u'source-2', 'target': 1},
            {'id': 3, 'name': u'source-3', 'target': 1}
 </s> add             {'id': 1, 'name': 'source-1', 'target': 2},
            {'id': 2, 'name': 'source-2', 'target': 1},
            {'id': 3, 'name': 'source-3', 'target': 1} </s> remove                 {'id': 1, 'name': u'source-1', 'targets': [1, 2, 3]},
                {'id': 2, 'name': u'source-2', 'targets': [1, 2]},
                {'id': 3, 'name': u'source-3', 'targets': [1, 2, 3]}
 </s> add                 {'id': 1, 'name': 'source-1', 'targets': [1, 2, 3]},
                {'id': 2, 'name': 'source-2', 'targets': [1, 2]},
                {'id': 3, 'name': 'source-3', 'targets': [1, 2, 3]} </s> remove             {'id': 1, 'name': u'target-1', 'sources': [1, 2, 3]},
            {'id': 2, 'name': u'target-2', 'sources': []},
 </s> add             {'id': 1, 'name': 'target-1', 'sources': [1, 2, 3]},
            {'id': 2, 'name': 'target-2', 'sources': []},
    #         {'id': 1, 'name': 'target-1', 'sources': [1]},
    #         {'id': 2, 'name': 'target-2', 'sources': []},
      #     # Ensure target 1 is updated, and everything else is as expected
      #     queryset = ForeignKeyTarget.objects.all()
      #     serializer = ForeignKeyTargetSerializer(queryset)
      #     expected = [
    #         {'id': 1, 'name': 'target-1', 'sources': [1]},
    #         {'id': 2, 'name': 'target-2', 'sources': []},
    #         {'id': 1, 'name': 'target-1', 'sources': [1]},
    #         {'id': 2, 'name': 'target-2', 'sources': []},
      #     ]
      #     self.assertEquals(serializer.data, expected)
keep keep keep keep replace replace keep keep
 First passing test under p3k \o/ 
rest_framework/tests/pk_relations.py