| /* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying | 
 |    file LICENSE.rst or https://cmake.org/licensing for details.  */ | 
 | #include "QCMakePresetComboBoxTest.h" | 
 |  | 
 | #include <QtTest> | 
 |  | 
 | void QCMakePresetComboBoxTest::changePresets() | 
 | { | 
 |   QCMakePresetComboBox box; | 
 |   QSignalSpy presetChanged(&box, &QCMakePresetComboBox::presetChanged); | 
 |  | 
 |   QCOMPARE(presetChanged.size(), 0); | 
 |  | 
 |   box.setPresets({}); | 
 |   QCOMPARE(presetChanged.size(), 0); | 
 |  | 
 |   box.setPresetName(QString{}); | 
 |   QCOMPARE(presetChanged.size(), 0); | 
 |  | 
 |   box.setPresets({ | 
 |     { | 
 |       /*name=*/"preset", | 
 |       /*description=*/"", | 
 |       /*description=*/"", | 
 |       /*generator=*/"Ninja", | 
 |       /*architecture=*/"", | 
 |       /*setArchitecture=*/true, | 
 |       /*toolset=*/"", | 
 |       /*setToolset=*/true, | 
 |       /*enabled=*/true, | 
 |     }, | 
 |   }); | 
 |   QCOMPARE(presetChanged.size(), 0); | 
 |  | 
 |   box.setPresetName(QString{}); | 
 |   QCOMPARE(presetChanged.size(), 0); | 
 |  | 
 |   box.setPresetName("noexist"); | 
 |   QCOMPARE(presetChanged.size(), 0); | 
 |  | 
 |   box.setPresetName("preset"); | 
 |   QCOMPARE(presetChanged.size(), 1); | 
 |   QCOMPARE(presetChanged.last(), QList<QVariant>{ "preset" }); | 
 |  | 
 |   box.setPresets({ | 
 |     { | 
 |       /*name=*/"preset", | 
 |       /*description=*/"", | 
 |       /*description=*/"", | 
 |       /*generator=*/"Ninja Multi-Config", | 
 |       /*architecture=*/"", | 
 |       /*setArchitecture=*/true, | 
 |       /*toolset=*/"", | 
 |       /*setToolset=*/true, | 
 |       /*enabled=*/true, | 
 |     }, | 
 |   }); | 
 |   QCOMPARE(presetChanged.size(), 1); | 
 |  | 
 |   box.setPresetName("noexist"); | 
 |   QCOMPARE(presetChanged.size(), 2); | 
 |   QCOMPARE(presetChanged.last(), QList<QVariant>{ QString{} }); | 
 |  | 
 |   box.setPresetName("preset"); | 
 |   QCOMPARE(presetChanged.size(), 3); | 
 |   QCOMPARE(presetChanged.last(), QList<QVariant>{ "preset" }); | 
 |  | 
 |   box.blockSignals(true); | 
 |   box.setPresetName(QString{}); | 
 |   box.blockSignals(false); | 
 |   QCOMPARE(presetChanged.size(), 3); | 
 |  | 
 |   box.setPresetName("preset"); | 
 |   QCOMPARE(presetChanged.size(), 4); | 
 |   QCOMPARE(presetChanged.last(), QList<QVariant>{ "preset" }); | 
 |  | 
 |   box.setPresets({}); | 
 |   QCOMPARE(presetChanged.size(), 5); | 
 |   QCOMPARE(presetChanged.last(), QList<QVariant>{ QString{} }); | 
 | } | 
 |  | 
 | QTEST_MAIN(QCMakePresetComboBoxTest) |