mirror of
https://gitlab.com/pholy/OSCAR-code.git
synced 2025-04-07 11:40:42 +00:00
Move raw data signal tests into a separate class.
Otherwise QTest treats the signal handlers as separate tests.
This commit is contained in:
parent
b2ca5f708e
commit
7a852953be
@ -29,14 +29,11 @@ void RawDataTests::testQIODeviceInterface()
|
|||||||
|
|
||||||
|
|
||||||
// Connect signals for testing.
|
// Connect signals for testing.
|
||||||
m_channelReadyRead = -1;
|
_RawDataTestSignalSink sink;
|
||||||
m_readyRead = false;
|
connect(&raw, SIGNAL(channelReadyRead(int)), &sink, SLOT(onChannelReadyRead(int)));
|
||||||
m_readChannelFinished = false;
|
connect(&raw, SIGNAL(readyRead()), &sink, SLOT(onReadyRead()));
|
||||||
m_aboutToClose = false;
|
connect(&raw, SIGNAL(readChannelFinished()), &sink, SLOT(onReadChannelFinished()));
|
||||||
connect(&raw, SIGNAL(channelReadyRead(int)), this, SLOT(onChannelReadyRead(int)));
|
connect(&raw, SIGNAL(aboutToClose()), &sink, SLOT(onAboutToClose()));
|
||||||
connect(&raw, SIGNAL(readyRead()), this, SLOT(onReadyRead()));
|
|
||||||
connect(&raw, SIGNAL(readChannelFinished()), this, SLOT(onReadChannelFinished()));
|
|
||||||
connect(&raw, SIGNAL(aboutToClose()), this, SLOT(onAboutToClose()));
|
|
||||||
|
|
||||||
|
|
||||||
// Open
|
// Open
|
||||||
@ -59,8 +56,8 @@ void RawDataTests::testQIODeviceInterface()
|
|||||||
|
|
||||||
// waitForReadyRead and ready signals
|
// waitForReadyRead and ready signals
|
||||||
Q_ASSERT(raw.waitForReadyRead(10000) == false);
|
Q_ASSERT(raw.waitForReadyRead(10000) == false);
|
||||||
//Q_ASSERT(m_channelReadyRead != -1);
|
//Q_ASSERT(sink.m_channelReadyRead != -1);
|
||||||
//Q_ASSERT(m_readyRead == true);
|
//Q_ASSERT(sink.m_readyRead == true);
|
||||||
|
|
||||||
|
|
||||||
// Channels
|
// Channels
|
||||||
@ -190,8 +187,8 @@ void RawDataTests::testQIODeviceInterface()
|
|||||||
// Close
|
// Close
|
||||||
raw.close();
|
raw.close();
|
||||||
Q_ASSERT(raw.isOpen() == qio.isOpen());
|
Q_ASSERT(raw.isOpen() == qio.isOpen());
|
||||||
Q_ASSERT(m_aboutToClose);
|
Q_ASSERT(sink.m_aboutToClose);
|
||||||
//Q_ASSERT(m_readChannelFinished);
|
//Q_ASSERT(sink.m_readChannelFinished);
|
||||||
|
|
||||||
|
|
||||||
// Unimplemented/untested:
|
// Unimplemented/untested:
|
||||||
@ -206,22 +203,29 @@ void RawDataTests::testQIODeviceInterface()
|
|||||||
// channelBytesWritten signal
|
// channelBytesWritten signal
|
||||||
}
|
}
|
||||||
|
|
||||||
void RawDataTests::onAboutToClose()
|
_RawDataTestSignalSink::_RawDataTestSignalSink() : QObject() {
|
||||||
|
m_channelReadyRead = -1;
|
||||||
|
m_readyRead = false;
|
||||||
|
m_readChannelFinished = false;
|
||||||
|
m_aboutToClose = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
void _RawDataTestSignalSink::onAboutToClose()
|
||||||
{
|
{
|
||||||
m_aboutToClose = true;
|
m_aboutToClose = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void RawDataTests::onChannelReadyRead(int channel)
|
void _RawDataTestSignalSink::onChannelReadyRead(int channel)
|
||||||
{
|
{
|
||||||
m_channelReadyRead = channel;
|
m_channelReadyRead = channel;
|
||||||
}
|
}
|
||||||
|
|
||||||
void RawDataTests::onReadChannelFinished()
|
void _RawDataTestSignalSink::onReadChannelFinished()
|
||||||
{
|
{
|
||||||
m_readChannelFinished = true;
|
m_readChannelFinished = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void RawDataTests::onReadyRead()
|
void _RawDataTestSignalSink::onReadyRead()
|
||||||
{
|
{
|
||||||
m_readyRead = true;
|
m_readyRead = true;
|
||||||
}
|
}
|
||||||
|
@ -13,15 +13,23 @@ class RawDataTests : public QObject
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
private slots:
|
private slots:
|
||||||
void testQIODeviceInterface();
|
void testQIODeviceInterface();
|
||||||
|
};
|
||||||
|
DECLARE_TEST(RawDataTests)
|
||||||
|
|
||||||
|
class _RawDataTestSignalSink : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
friend RawDataTests;
|
||||||
|
private slots:
|
||||||
void onAboutToClose();
|
void onAboutToClose();
|
||||||
void onChannelReadyRead(int);
|
void onChannelReadyRead(int);
|
||||||
void onReadChannelFinished();
|
void onReadChannelFinished();
|
||||||
void onReadyRead();
|
void onReadyRead();
|
||||||
private:
|
private:
|
||||||
|
_RawDataTestSignalSink();
|
||||||
bool m_aboutToClose;
|
bool m_aboutToClose;
|
||||||
int m_channelReadyRead;
|
int m_channelReadyRead;
|
||||||
bool m_readChannelFinished;
|
bool m_readChannelFinished;
|
||||||
bool m_readyRead;
|
bool m_readyRead;
|
||||||
};
|
};
|
||||||
DECLARE_TEST(RawDataTests)
|
// Do not declare this as a test to be executed.
|
||||||
|
Loading…
Reference in New Issue
Block a user