ACF $AcfVersion:0$
CChangeNotifierTest.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5// Qt includes
6#include <QtCore/QObject>
7#include <QtTest/QtTest>
8
9// ACF includes
11#include <istd/IChangeable.h>
13
14// Mock changeable class for testing
16{
17public:
22
23 virtual void OnBeginChanges() override
24 {
26 }
27
28 virtual void OnEndChanges(const ChangeSet& changeSet) override
29 {
31 lastEndChangeSet = changeSet;
32 }
33
34 virtual void BeginChanges(const ChangeSet& changeSet) override
35 {
36 lastBeginChangeSet = changeSet;
37 IChangeable::BeginChanges(changeSet);
38 }
39
40 virtual void EndChanges(const ChangeSet& changeSet) override
41 {
42 IChangeable::EndChanges(changeSet);
43 }
44};
45
46class CChangeNotifierTest: public QObject
47{
48 Q_OBJECT
49private slots:
50 void initTestCase();
51
52 void ConstructorDestructorTest();
53 void IsValidTest();
54 void ResetTest();
55 void AbortTest();
56 void NullChangeableTest();
57
58 void cleanupTestCase();
59};
60
61
virtual void BeginChanges(const ChangeSet &changeSet) override
Starts the change transaction.
istd::IChangeable::ChangeSet lastBeginChangeSet
virtual void OnBeginChanges() override
Callback function for begin change event.
virtual void EndChanges(const ChangeSet &changeSet) override
Ends the change transaction.
virtual void OnEndChanges(const ChangeSet &changeSet) override
Callback function for end change event.
istd::IChangeable::ChangeSet lastEndChangeSet
Set of change flags (its IDs).
Definition IChangeable.h:36
Common interface for data model objects, which can be changed.
Definition IChangeable.h:28