def test_mountpoint_validity_check(self):
        dialog = PartitionEditDialog(self.parent_window, self.edited_device, self.resize_info, self.supported_fs, ["/root", "/var"], True)

        # valid mountpoint
        dialog.mountpoint_entry.set_text("/home")
        dialog.validate_user_input()
        self.assertFalse(self.error_dialog.called)
        self.error_dialog.reset_mock()

        # invalid mountpoint
        mnt = "home"
        dialog.mountpoint_entry.set_text(mnt)
        dialog.validate_user_input()
        self.error_dialog.assert_any_call(dialog, _("\"{0}\" is not a valid mountpoint.").format(mnt))
        self.error_dialog.reset_mock()

        # duplicate mountpoint
        mnt = "/root"
        dialog.mountpoint_entry.set_text(mnt)
        dialog.validate_user_input()
        self.error_dialog.assert_any_call(dialog, "Selected mountpoint \"%s\" is already set for another device." % mnt)
        self.error_dialog.reset_mock()

        # same mountpoint
        self.edited_device.format.configure_mock(mountpoint="/var")
        dialog.mountpoint_entry.set_text("/var")
        dialog.validate_user_input()
        self.assertFalse(self.error_dialog.called)  # no change --> no error
        self.error_dialog.reset_mock()
        self.edited_device.format.configure_mock(mountpoint="")
    def test_label_validity_check(self):
        dialog = PartitionEditDialog(self.parent_window, self.edited_device, self.resize_info, self.supported_fs, [], True)

        # valid label
        label = "a" * 5
        dialog.format_check.set_active(True)
        dialog.filesystems_combo.set_active_id("ext4")
        dialog.fslabel_entry.set_text(label)

        dialog.validate_user_input()
        self.assertFalse(self.error_dialog.called)  # valid label, no error_dialog
        self.error_dialog.reset_mock()

        # invalid label for ext4 (too long)
        label = "a" * 50
        dialog.format_check.set_active(True)
        dialog.filesystems_combo.set_active_id("ext4")
        dialog.fslabel_entry.set_text(label)

        dialog.validate_user_input()
        self.error_dialog.assert_any_call(dialog, _("\"{label}\" is not a valid label.").format(label=label))
        self.error_dialog.reset_mock()