refactor: port deskflow/ClipboardChunkTests to QtTests
This commit is contained in:
@ -1,67 +0,0 @@
|
||||
/*
|
||||
* Deskflow -- mouse and keyboard sharing utility
|
||||
* SPDX-FileCopyrightText: (C) 2015 - 2016 Symless Ltd.
|
||||
* SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
|
||||
*/
|
||||
|
||||
#include "deskflow/ClipboardChunk.h"
|
||||
#include "deskflow/ProtocolTypes.h"
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
TEST(ClipboardChunkTests, start_formatStartChunk)
|
||||
{
|
||||
ClipboardID id = 0;
|
||||
uint32_t sequence = 0;
|
||||
std::string mockDataSize("10");
|
||||
ClipboardChunk *chunk = ClipboardChunk::start(id, sequence, mockDataSize);
|
||||
uint32_t temp_m_chunk;
|
||||
memcpy(&temp_m_chunk, &(chunk->m_chunk[1]), 4);
|
||||
|
||||
EXPECT_EQ(id, chunk->m_chunk[0]);
|
||||
EXPECT_EQ(sequence, temp_m_chunk);
|
||||
EXPECT_EQ(kDataStart, chunk->m_chunk[5]);
|
||||
EXPECT_EQ('1', chunk->m_chunk[6]);
|
||||
EXPECT_EQ('0', chunk->m_chunk[7]);
|
||||
EXPECT_EQ('\0', chunk->m_chunk[8]);
|
||||
|
||||
delete chunk;
|
||||
}
|
||||
|
||||
TEST(ClipboardChunkTests, data_formatDataChunk)
|
||||
{
|
||||
ClipboardID id = 0;
|
||||
uint32_t sequence = 1;
|
||||
std::string mockData("mock data");
|
||||
ClipboardChunk *chunk = ClipboardChunk::data(id, sequence, mockData);
|
||||
|
||||
EXPECT_EQ(id, chunk->m_chunk[0]);
|
||||
EXPECT_EQ(sequence, (uint32_t)chunk->m_chunk[1]);
|
||||
EXPECT_EQ(kDataChunk, chunk->m_chunk[5]);
|
||||
EXPECT_EQ('m', chunk->m_chunk[6]);
|
||||
EXPECT_EQ('o', chunk->m_chunk[7]);
|
||||
EXPECT_EQ('c', chunk->m_chunk[8]);
|
||||
EXPECT_EQ('k', chunk->m_chunk[9]);
|
||||
EXPECT_EQ(' ', chunk->m_chunk[10]);
|
||||
EXPECT_EQ('d', chunk->m_chunk[11]);
|
||||
EXPECT_EQ('a', chunk->m_chunk[12]);
|
||||
EXPECT_EQ('t', chunk->m_chunk[13]);
|
||||
EXPECT_EQ('a', chunk->m_chunk[14]);
|
||||
EXPECT_EQ('\0', chunk->m_chunk[15]);
|
||||
|
||||
delete chunk;
|
||||
}
|
||||
|
||||
TEST(ClipboardChunkTests, end_formatDataChunk)
|
||||
{
|
||||
ClipboardID id = 1;
|
||||
uint32_t sequence = 1;
|
||||
ClipboardChunk *chunk = ClipboardChunk::end(id, sequence);
|
||||
|
||||
EXPECT_EQ(id, chunk->m_chunk[0]);
|
||||
EXPECT_EQ(sequence, (uint32_t)chunk->m_chunk[1]);
|
||||
EXPECT_EQ(kDataEnd, chunk->m_chunk[5]);
|
||||
EXPECT_EQ('\0', chunk->m_chunk[6]);
|
||||
|
||||
delete chunk;
|
||||
}
|
||||
@ -13,6 +13,14 @@ create_test(
|
||||
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/src/lib/deskflow"
|
||||
)
|
||||
|
||||
create_test(
|
||||
NAME ClipboardChunksTests
|
||||
DEPENDS app
|
||||
LIBS arch base io ${extra_libs}
|
||||
SOURCE ClipboardChunksTests.cpp
|
||||
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/src/lib/deskflow"
|
||||
)
|
||||
|
||||
create_test(
|
||||
NAME ConfigTests
|
||||
DEPENDS app
|
||||
|
||||
70
src/unittests/deskflow/ClipboardChunksTests.cpp
Normal file
70
src/unittests/deskflow/ClipboardChunksTests.cpp
Normal file
@ -0,0 +1,70 @@
|
||||
/*
|
||||
* Deskflow -- mouse and keyboard sharing utility
|
||||
* SPDX-FileCopyrightText: (C) 2025 Chris Rizzitello <sithlord48@gmail.com>
|
||||
* SPDX-FileCopyrightText: (C) 2015 - 2016 Symless Ltd.
|
||||
* SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
|
||||
*/
|
||||
|
||||
#include "ClipboardChunksTests.h"
|
||||
|
||||
#include "../../lib/deskflow/ClipboardChunk.h"
|
||||
|
||||
#include "deskflow/ProtocolTypes.h"
|
||||
|
||||
void ClipboardChunksTests::startFormatData()
|
||||
{
|
||||
ClipboardID id = 0;
|
||||
uint32_t sequence = 0;
|
||||
std::string mockDataSize("10");
|
||||
ClipboardChunk *chunk = ClipboardChunk::start(id, sequence, mockDataSize);
|
||||
uint32_t temp_m_chunk;
|
||||
memcpy(&temp_m_chunk, &(chunk->m_chunk[1]), 4);
|
||||
|
||||
QCOMPARE(chunk->m_chunk[0], id);
|
||||
QCOMPARE(temp_m_chunk, sequence);
|
||||
QCOMPARE(chunk->m_chunk[5], kDataStart);
|
||||
QCOMPARE(chunk->m_chunk[6], '1');
|
||||
QCOMPARE(chunk->m_chunk[7], '0');
|
||||
QCOMPARE(chunk->m_chunk[8], '\0');
|
||||
delete chunk;
|
||||
}
|
||||
|
||||
void ClipboardChunksTests::formatDataChunk()
|
||||
{
|
||||
ClipboardID id = 0;
|
||||
uint32_t sequence = 1;
|
||||
std::string mockData("mock data");
|
||||
ClipboardChunk *chunk = ClipboardChunk::data(id, sequence, mockData);
|
||||
|
||||
QCOMPARE(chunk->m_chunk[0], id);
|
||||
QCOMPARE((uint32_t)chunk->m_chunk[1], sequence);
|
||||
QCOMPARE(chunk->m_chunk[5], kDataChunk);
|
||||
QCOMPARE(chunk->m_chunk[6], 'm');
|
||||
QCOMPARE(chunk->m_chunk[7], 'o');
|
||||
QCOMPARE(chunk->m_chunk[8], 'c');
|
||||
QCOMPARE(chunk->m_chunk[9], 'k');
|
||||
QCOMPARE(chunk->m_chunk[10], ' ');
|
||||
QCOMPARE(chunk->m_chunk[11], 'd');
|
||||
QCOMPARE(chunk->m_chunk[12], 'a');
|
||||
QCOMPARE(chunk->m_chunk[13], 't');
|
||||
QCOMPARE(chunk->m_chunk[14], 'a');
|
||||
QCOMPARE(chunk->m_chunk[15], '\0');
|
||||
|
||||
delete chunk;
|
||||
}
|
||||
|
||||
void ClipboardChunksTests::endFormatData()
|
||||
{
|
||||
ClipboardID id = 1;
|
||||
uint32_t sequence = 1;
|
||||
ClipboardChunk *chunk = ClipboardChunk::end(id, sequence);
|
||||
|
||||
QCOMPARE(chunk->m_chunk[0], id);
|
||||
QCOMPARE((uint32_t)chunk->m_chunk[1], sequence);
|
||||
QCOMPARE(chunk->m_chunk[5], kDataEnd);
|
||||
QCOMPARE(chunk->m_chunk[6], '\0');
|
||||
|
||||
delete chunk;
|
||||
}
|
||||
|
||||
QTEST_MAIN(ClipboardChunksTests)
|
||||
17
src/unittests/deskflow/ClipboardChunksTests.h
Normal file
17
src/unittests/deskflow/ClipboardChunksTests.h
Normal file
@ -0,0 +1,17 @@
|
||||
/*
|
||||
* Deskflow -- mouse and keyboard sharing utility
|
||||
* SPDX-FileCopyrightText: (C) 2025 Chris Rizzitello <sithlord48@gmail.com>
|
||||
* SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
|
||||
*/
|
||||
|
||||
#include <QTest>
|
||||
|
||||
class ClipboardChunksTests : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
private slots:
|
||||
// Test are run in order top to bottom
|
||||
void startFormatData();
|
||||
void formatDataChunk();
|
||||
void endFormatData();
|
||||
};
|
||||
Reference in New Issue
Block a user