void testValidInput() {
    char user_input[20] = {'1','2','3','4'};
    char good_input[20] = {'1','2','3','4'};
    int i = 0;
    while(user_input[i] != '\0' && user_input[i] != '\n' && i<20)
    {
        ASSERTM("Failed Valid Input Test", validateSelection(user_input[i],good_input));
        i++;
    }
}
void testSpecialCharacters()
{
    char user_input[4] = {'@', '!', '%', '$'};
    char good_input[20] = {'1','2','3', 'a', 'b', 's'};
    int i = 0;
    while ((user_input[i] != '\0') && (user_input[i] != '\n') && i<4)
    {
        ASSERTM("Failed Special Character Test", !validateSelection(user_input[i],good_input));
        i++;
    }
}
void testOutOfRange()
{
    char user_input[3] = {'0', '5', '6'};
    char good_input[20] = {'1','2','3','4'};
    int i = 0;
    while ((user_input[i] != '\0') && (user_input[i] != '\n') && i<3)
    {
        //printf("Input tested: %s\n", user_input[i]);
        ASSERTM("Failed Out of Range Test", !validateSelection(user_input[i],good_input));
        i++;
    }
}
Esempio n. 4
0
void KeyboardLayoutEditor::openKeyboardLayout(DataIndexKeyboardLayout* dataIndexKeyboardLayout)
{
    DataAccess dataAccess;

    m_dataIndexKeyboardLayout = dataIndexKeyboardLayout;

    if (currentUndoStack())
    {
        currentUndoStack()->disconnect(this, SLOT(validateSelection()));
    }

    initUndoStack(QString("keyboard-layout-%1").arg(dataIndexKeyboardLayout->id()));
    m_propertiesWidget->setUndoStack(currentUndoStack());
    setSelectedKey(0);
    connect(currentUndoStack(), SIGNAL(indexChanged(int)), SLOT(validateSelection()));

    m_keyboardLayout->setAssociatedDataIndexKeyboardLayout(m_dataIndexKeyboardLayout);

    if (!dataAccess.loadKeyboardLayout(dataIndexKeyboardLayout, m_keyboardLayout))
    {
        KMessageBox::error(this, i18n("Error while opening keyboard layout"));
    }

    if (dataIndexKeyboardLayout->source() == DataIndex::BuiltInResource)
    {
        setReadOnly(true);
        m_messageWidget->setMessageType(KMessageWidget::Information);
        m_messageWidget->setText(i18n("Built-in keyboard layouts can only be viewed."));
        m_messageWidget->setCloseButtonVisible(false);
        m_messageWidget->animatedShow();
    }
    else
    {
        setReadOnly(false);
        m_messageWidget->animatedHide();
    }
}