##// END OF EJS Templates
Implements test execute() method...
Implements test execute() method For each iteration of the test, this method generates available operations according to states of the variables, and execute an operation that has been chosen randomly.

File last commit:

r709:8d80a1dd4059
r1174:0c07405da56c
Show More
StringUtils.h
35 lines | 1.0 KiB | text/x-c | CLexer
#ifndef SCIQLOP_STRINGUTILS_H
#define SCIQLOP_STRINGUTILS_H
#include "CoreGlobal.h"
#include <vector>
class QString;
/**
* Utility class with methods for strings
*/
struct SCIQLOP_CORE_EXPORT StringUtils {
/**
* Generates a unique name from a default name and a set of forbidden names.
*
* Generating the unique name is done by adding an index to the default name and stopping at the
* first index for which the generated name is not in the forbidden names.
*
* Examples (defaultName, forbiddenNames -> result):
* - "FGM", {"FGM"} -> "FGM1"
* - "FGM", {"ABC"} -> "FGM"
* - "FGM", {"FGM", "FGM1"} -> "FGM2"
* - "FGM", {"FGM", "FGM2"} -> "FGM1"
* - "", {"ABC"} -> "1"
*
* @param defaultName the default name
* @param forbiddenNames the set of forbidden names
* @return the unique name generated
*/
static QString uniqueName(const QString &defaultName,
const std::vector<QString> &forbiddenNames) noexcept;
};
#endif // SCIQLOP_STRINGUTILS_H