def METHOD_NAME(self):
    m = self.machine
    b = self.browser
    self.login_and_go("/storage")
    b.wait_in_text("#drives", "VirtIO")
    # Make a super slow block device so that we have enough
    # chances to cancel the operation
    disk = self.add_ram_disk()
    blocks = int(m.execute(f"blockdev --getsz {disk}"))
    m.execute(f"echo '0 {blocks} delay {disk} 0 500' | dmsetup create superslow")
    b.click("#others .sidepanel-row:contains('/dev/mapper/superslow')")
    b.wait_visible('#storage-detail')
    # Put a signature near the end
    sigoff = (blocks - 1) * 512
    m.execute(f"echo hello | dd if=/dev/stdin of=/dev/mapper/superslow bs=1 count=5 seek={sigoff}")
    self.content_row_action(1, "Format")
    self.dialog_wait_open()
    self.dialog_set_val("erase.on", val=True)
    self.dialog_set_val("mount_point", "/foo")
    self.dialog_apply()
    with b.wait_timeout(60):
        b.wait_in_text("footer", "Erasing /dev/mapper/superslow")
    self.dialog_cancel()
    self.dialog_wait_close()
    # The signature should still be there
    sig = m.execute(f"dd if=/dev/mapper/superslow of=/dev/stdout bs=1 count=5 skip={sigoff}")
    self.assertEqual(sig, 'hello')