File indexing completed on 2024-04-28 05:50:35

0001 /*
0002     SPDX-FileCopyrightText: 2013 Kurt Hindenburg <kurt.hindenburg@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 // Own
0008 #include "TerminalTest.h"
0009 
0010 #include <QTest>
0011 
0012 // Konsole
0013 #include "../terminalDisplay/TerminalColor.h"
0014 #include "../terminalDisplay/TerminalDisplay.h"
0015 #include "../terminalDisplay/TerminalScrollBar.h"
0016 
0017 #include "../characters/CharacterColor.h"
0018 
0019 using namespace Konsole;
0020 
0021 void TerminalTest::testScrollBarPositions()
0022 {
0023     TerminalDisplay display(nullptr);
0024 
0025     // ScrollBar Positions
0026     display.scrollBar()->setScrollBarPosition(Enum::ScrollBarLeft);
0027     QCOMPARE(display.scrollBar()->scrollBarPosition(), Enum::ScrollBarLeft);
0028     display.scrollBar()->setScrollBarPosition(Enum::ScrollBarRight);
0029     QCOMPARE(display.scrollBar()->scrollBarPosition(), Enum::ScrollBarRight);
0030     display.scrollBar()->setScrollBarPosition(Enum::ScrollBarHidden);
0031     QCOMPARE(display.scrollBar()->scrollBarPosition(), Enum::ScrollBarHidden);
0032 }
0033 
0034 void TerminalTest::testColorTable()
0035 {
0036     // These are from ColorScheme.cpp but they can be anything to test
0037     const QColor defaultTable[TABLE_COLORS] = {QColor(0x00, 0x00, 0x00), QColor(0xFF, 0xFF, 0xFF), QColor(0x00, 0x00, 0x00), QColor(0xB2, 0x18, 0x18),
0038                                                QColor(0x18, 0xB2, 0x18), QColor(0xB2, 0x68, 0x18), QColor(0x18, 0x18, 0xB2), QColor(0xB2, 0x18, 0xB2),
0039                                                QColor(0x18, 0xB2, 0xB2), QColor(0xB2, 0xB2, 0xB2), QColor(0x00, 0x00, 0x00), QColor(0xFF, 0xFF, 0xFF),
0040                                                QColor(0x68, 0x68, 0x68), QColor(0xFF, 0x54, 0x54), QColor(0x54, 0xFF, 0x54), QColor(0xFF, 0xFF, 0x54),
0041                                                QColor(0x54, 0x54, 0xFF), QColor(0xFF, 0x54, 0xFF), QColor(0x54, 0xFF, 0xFF), QColor(0x00, 0xFF, 0xFF)};
0042 
0043     TerminalDisplay display(nullptr);
0044 
0045     display.terminalColor()->setColorTable(defaultTable);
0046 
0047     const QColor *colorTable = display.terminalColor()->colorTable();
0048 
0049     for (int i = 0; i < TABLE_COLORS; i++) {
0050         QCOMPARE(colorTable[i], defaultTable[i]);
0051     }
0052 
0053     QColor colorEntry = QColor(0x00, 0x00, 0x00);
0054     QVERIFY(colorTable[1] != colorEntry);
0055 }
0056 
0057 void TerminalTest::testSize()
0058 {
0059     TerminalDisplay display(nullptr);
0060 
0061     QCOMPARE(display.columns(), 1);
0062     QCOMPARE(display.lines(), 1);
0063 
0064     // TODO: setSize doesn't change size...
0065     // display.setSize(80, 25);
0066 }
0067 
0068 QTEST_MAIN(TerminalTest)
0069 
0070 #include "moc_TerminalTest.cpp"