def METHOD_NAME(self):
    data = self.type2test([4, 5, 6, 7])
    for proto in range(pickle.HIGHEST_PROTOCOL + 1):
        it = itorg = reversed(data)
        d = pickle.dumps(it, proto)
        it = pickle.loads(d)
        self.assertEqual(type(itorg), type(it))
        self.assertEqual(self.type2test(it), self.type2test(reversed(data)))
        it = pickle.loads(d)
        next(it)
        d = pickle.dumps(it, proto)
        self.assertEqual(self.type2test(it), self.type2test(reversed(data))[1:])