ACF $AcfVersion:0$
CChangeGroupTest.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
10#include <istd/CChangeGroup.h>
11#include <istd/IChangeable.h>
13
14// Mock changeable class for testing
16{
17public:
24
25 virtual void OnBeginChanges() override {}
26 virtual void OnEndChanges(const ChangeSet& changeSet) override
27 {
29 lastEndChangesSet = changeSet;
30 }
31
32 virtual void BeginChangeGroup(const ChangeSet& changeSet) override
33 {
35 lastBeginChangeSet = changeSet;
36 IChangeable::BeginChangeGroup(changeSet);
37 }
38
39 virtual void EndChangeGroup(const ChangeSet& changeSet) override
40 {
42 lastEndChangeSet = changeSet;
43 IChangeable::EndChangeGroup(changeSet);
44 }
45};
46
47class CChangeGroupTest: public QObject
48{
49 Q_OBJECT
50private slots:
51 void initTestCase();
52
53 void ConstructorDestructorTest();
54 void IsValidTest();
55 void ResetTest();
56 void NullChangeableTest();
57
58 void cleanupTestCase();
59};
60
61
virtual void OnBeginChanges() override
Callback function for begin change event.
virtual void BeginChangeGroup(const ChangeSet &changeSet) override
Starts group of changes.
istd::IChangeable::ChangeSet lastBeginChangeSet
virtual void OnEndChanges(const ChangeSet &changeSet) override
Callback function for end change event.
istd::IChangeable::ChangeSet lastEndChangeSet
istd::IChangeable::ChangeSet lastEndChangesSet
virtual void EndChangeGroup(const ChangeSet &changeSet) override
Ends group of changes.
Set of change flags (its IDs).
Definition IChangeable.h:36
Common interface for data model objects, which can be changed.
Definition IChangeable.h:28