'Writing an update of the contents of one pool\'s filesystem to
another pool\'s filesystem that was previously created this way and
was since changed drops any changes and updates its contents to
the sender\'s.'

def test_write_update_to_changed_filesystem(self):

    d = create_and_copy(self, build_pool)
    def got_volumes(copied):
        (from_volume, to_volume) = (copied.from_volume, copied.to_volume)
        to_filesystem = to_volume.get_filesystem()
        subprocess.check_call(['zfs', 'set', 'readonly=off', to_filesystem.name])
        to_path = to_filesystem.get_path()
        to_path.child('extra').setContent('lalala')
        from_path = from_volume.get_filesystem().get_path()
        from_path.child('anotherfile').setContent('hello')
        from_path.child('file').remove()
        copying = copy(from_volume, to_volume)
        def copied(ignored):
            assertVolumesEqual(self, from_volume, to_volume)
        copying.addCallback(copied)
        return copying
    d.addCallback(got_volumes)
    return d
