ImagingTools Core SDK
CSelectionTest.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4// std includes
5#include <memory>
6
7// Qt includes
8#include <QtCore/QObject>
9#include <QtTest/QtTest>
10
11// ACF includes
12#include <istd/TDelPtr.h>
13#include <istd/CChangeNotifier.h>
14#include <iprm/IOptionsList.h>
15#include <iser/IArchive.h>
16#include <iser/CArchiveTag.h>
17#include <iser/CMemoryReadArchive.h>
18#include <iser/CMemoryWriteArchive.h>
19#include <iser/CXmlStringWriteArchive.h>
20#include <iser/CXmlStringReadArchive.h>
21#include <iser/CReadArchiveBase.h>
22#include <iser/CWriteArchiveBase.h>
23#include <itest/CStandardTestExecutor.h>
24
25// ImtCore includes
26#include <imtbase/CSelection.h>
27
28
29class CSelectionTest: public QObject
30{
31 Q_OBJECT
32
33private slots:
34 void initTestCase();
35 void SetSelectedIdsInMultiSelectTest();
36 void SetSelectedIdsInSingleSelectTest();
37 void SetSelectedEmptyIdsInMultiSelectTest();
38 void SetSelectedEmptyIdsInSingleSelectTest();
39 void SetSelectedManyIdsInSingleSelectTest();
40 void IsEqualMultiSelectTest();
41 void IsNonEqualMultiSelectTest();
42 void IsNonEqualMultiSelectAndSingleSelectTest();
43 void IsEqualSingleSelectTest();
44 void IsNonEqualSingleSelectTest();
45 void IsNonEqualEmptiesSingleSelectAndMultiSelectTest();
46 void CopyFromMultiSelectToMultiSelectTest();
47 void CopyFromSingleSelectToSingleSelectTest();
48 void CopyFromMultiSelectToSingleSelectTest();
49 void CloneMeSingleSelectTest();
50 void CloneMeMultiSelectTest();
51 void CheckSerializeMemoryTest();
52 void CompareSerializeMemoryDataWithInputFileDataTest();
53 void SerializeMemoryTest();
54 void CheckSerializeXmlTest();
55 void CompareSerializeXmlDataWithInputFileDataTest();
56 void SerializeXmlTest();
57 void ResetDataTest();
58 void cleanupTestCase();
59
60private:
61 imtbase::ISelection::Ids m_testMultiSelectedIds;
62 imtbase::ISelection::Ids m_testSingleSelectedIds;
63 imtbase::ISelection::Ids m_testEmptySelectedIds;
64 imtbase::ISelection::Ids m_testSelectedWithEmptyKeysIds;
65};
66
67