def test_snapshot_timestamp(self): # data capture, woo fake_stdout = StringIO() # Create local constants that refer to values we will insert and check TIMESTAMP_KEY_TO_USE = 'birthday of Asheesh with arbitrary time' TIMESTAMP_DATE_TO_USE = datetime.datetime(1985, 10, 20, 3, 21, 20) # make fake Timestamp t = Timestamp() t.key = TIMESTAMP_KEY_TO_USE t.timestamp = TIMESTAMP_DATE_TO_USE t.save() # snapshot fake timestamp into fake stdout command = mysite.customs.management.commands.snapshot_public_data.Command( ) command.handle(output=fake_stdout) # now, delete the timestamp... t.delete() # let's see if we can re-import the timestamp for obj in django.core.serializers.deserialize('json', fake_stdout.getvalue()): obj.save() # testing to see if there are ANY self.assertTrue(Timestamp.objects.all()) # testing to see if ours is there reincarnated_t = mysite.base.models.Timestamp.objects.get( key=TIMESTAMP_KEY_TO_USE) self.assertEquals(reincarnated_t.timestamp, TIMESTAMP_DATE_TO_USE)