У меня есть 2 поверхности пигмеев (технически подповерхности), и мне нужно проверить их на равенство.
Вот мой код:
actor.display(mockSurface, Rect((0, 0, 640, 640)))
assert actor.image == actor.spriteSheet.subsurface(Rect((0, 30, 30, 30)))
А вот код, стоящий за actor.display:
def display(self, screen, camera_location):
self.image = self.spriteSheet.subsurface(Rect((0, 30, 30, 30)))
screen.blit(self.image, (0, 0))
Теперь вот ошибка, которую я получаю из этой строки утверждения:
> assert teste.image == teste.spriteSheet.subsurface(Rect((0, 30, 30, 30)))
E assert <Surface(30x30x32 SW)> == <Surface(30x30x32 SW)>
E + where <Surface(30x30x32 SW)> = <actor.Actor instance at 0x2f78ef0>.image
E + and <Surface(30x30x32 SW)> = <Surface(120x90x32 SW)>.subsurface(<rect(0, 30, 30, 30)>)
E + where <Surface(120x90x32 SW)> = <actor.Actor instance at 0x2f78ef0>.spriteSheet
E + and <rect(0, 30, 30, 30)> = Rect((0, 30, 30, 30))
Они должны быть равны (я ошибаюсь), но по какой-то хитрой уловке змеи утверждение не выполняется.