@@ -2,3 +2,4 | |||||
2 |
|
2 | |||
3 | const QString NB_MAX_OPERATIONS_PROPERTY = QStringLiteral("component"); |
|
3 | const QString NB_MAX_OPERATIONS_PROPERTY = QStringLiteral("component"); | |
4 | const QString NB_MAX_VARIABLES_PROPERTY = QStringLiteral("nbMaxVariables"); |
|
4 | const QString NB_MAX_VARIABLES_PROPERTY = QStringLiteral("nbMaxVariables"); | |
|
5 | const QString AVAILABLE_OPERATIONS_PROPERTY = QStringLiteral("availableOperations"); |
@@ -18,4 +18,7 extern const QString NB_MAX_OPERATIONS_PROPERTY; | |||||
18 | /// Max number of variables to manipulate through operations |
|
18 | /// Max number of variables to manipulate through operations | |
19 | extern const QString NB_MAX_VARIABLES_PROPERTY; |
|
19 | extern const QString NB_MAX_VARIABLES_PROPERTY; | |
20 |
|
20 | |||
|
21 | /// Set of operations available for the test | |||
|
22 | extern const QString AVAILABLE_OPERATIONS_PROPERTY; | |||
|
23 | ||||
21 | #endif // SCIQLOP_FUZZINGDEFS_H |
|
24 | #endif // SCIQLOP_FUZZINGDEFS_H |
@@ -31,6 +31,18 using VariablesPool = std::map<VariableId, std::shared_ptr<Variable> >; | |||||
31 | // Defaults values used when the associated properties have not been set for the test |
|
31 | // Defaults values used when the associated properties have not been set for the test | |
32 | const auto NB_MAX_OPERATIONS_DEFAULT_VALUE = 100; |
|
32 | const auto NB_MAX_OPERATIONS_DEFAULT_VALUE = 100; | |
33 | const auto NB_MAX_VARIABLES_DEFAULT_VALUE = 1; |
|
33 | const auto NB_MAX_VARIABLES_DEFAULT_VALUE = 1; | |
|
34 | const auto AVAILABLE_OPERATIONS_DEFAULT_VALUE | |||
|
35 | = QVariant::fromValue(OperationsTypes{FuzzingOperationType::CREATE}); | |||
|
36 | OperationsPool createOperationsPool(const OperationsTypes &types) | |||
|
37 | { | |||
|
38 | OperationsPool result{}; | |||
|
39 | ||||
|
40 | std::transform(types.cbegin(), types.cend(), std::inserter(result, result.end()), | |||
|
41 | [](const auto &type) { return FuzzingOperationFactory::create(type); }); | |||
|
42 | ||||
|
43 | return result; | |||
|
44 | } | |||
|
45 | ||||
34 | /** |
|
46 | /** | |
35 | * Class to run random tests |
|
47 | * Class to run random tests | |
36 | */ |
|
48 | */ | |
@@ -72,6 +84,14 private: | |||||
72 | return result; |
|
84 | return result; | |
73 | } |
|
85 | } | |
74 |
|
86 | |||
|
87 | OperationsPool operationsPool() const | |||
|
88 | { | |||
|
89 | static auto result = createOperationsPool( | |||
|
90 | m_Properties.value(AVAILABLE_OPERATIONS_PROPERTY, AVAILABLE_OPERATIONS_DEFAULT_VALUE) | |||
|
91 | .value<OperationsTypes>()); | |||
|
92 | return result; | |||
|
93 | } | |||
|
94 | ||||
75 | VariableController &m_VariableController; |
|
95 | VariableController &m_VariableController; | |
76 | Properties m_Properties; |
|
96 | Properties m_Properties; | |
77 | VariablesPool m_VariablesPool; |
|
97 | VariablesPool m_VariablesPool; |
General Comments 0
You need to be logged in to leave comments.
Login now