def METHOD_NAME(self):
    alpha = 0.5
    for color in [1.0, 0.0, 0.5]:
        with self.subTest(color=color):
            gc = GraphicsContext(self.size, pix_format="bgra32")
            orig = self.solid_bgra32(self.size, color, alpha)
            img = GraphicsContext(orig, pix_format="bgra32")
            gc.draw_image(img)
            actual = gc.bmp_array
            gc_background = self.solid_bgra32(self.size, 1.0)
            orig = self.solid_bgra32(self.size, color, alpha)
            desired = self.alpha_blend(gc_background, orig)
            # also, the alpha channel of the image is not copied into the
            # desination graphics context, so we have to ignore alphas
            self.assert_images_close(
                desired[:, :, :-1], actual[:, :, :-1], diff_allowed=slop_allowed
            )