enumerate test stages

remove ambiguity when multiple stages of the same type are used
This commit is contained in:
v4hn 2020-04-03 21:18:13 +02:00
parent 5ae7e54732
commit a193fc2ec5

View File

@ -11,12 +11,14 @@
using namespace moveit::task_constructor;
static int mock_id = 0;
class GeneratorMockup : public Generator
{
int runs = 0;
public:
GeneratorMockup(int runs = 0) : Generator("generator"), runs(runs) {}
GeneratorMockup(int runs = 0) : Generator("generator " + std::to_string(mock_id++)), runs(runs) {}
bool canCompute() const override { return runs > 0; }
void compute() override {
if (runs > 0)
@ -27,7 +29,8 @@ public:
class MonitoringGeneratorMockup : public MonitoringGenerator
{
public:
MonitoringGeneratorMockup(Stage* monitored) : MonitoringGenerator("monitoring generator", monitored) {}
MonitoringGeneratorMockup(Stage* monitored)
: MonitoringGenerator("monitoring generator " + std::to_string(mock_id++), monitored) {}
bool canCompute() const override { return false; }
void compute() override {}
void onNewSolution(const SolutionBase& s) override {}
@ -39,7 +42,8 @@ class PropagatorMockup : public PropagatingEitherWay
int bw_runs = 0;
public:
PropagatorMockup(int fw = 0, int bw = 0) : PropagatingEitherWay("either way"), fw_runs(fw), bw_runs(bw) {}
PropagatorMockup(int fw = 0, int bw = 0)
: PropagatingEitherWay("propagate " + std::to_string(mock_id++)), fw_runs(fw), bw_runs(bw) {}
void computeForward(const InterfaceState& from) override {
if (fw_runs > 0)
--fw_runs;
@ -54,7 +58,7 @@ class ForwardMockup : public PropagatorMockup
public:
ForwardMockup(int runs = 0) : PropagatorMockup(runs, 0) {
restrictDirection(FORWARD);
setName("forward");
setName("forward " + std::to_string(mock_id++));
}
};
class BackwardMockup : public PropagatorMockup
@ -62,7 +66,7 @@ class BackwardMockup : public PropagatorMockup
public:
BackwardMockup(int runs = 0) : PropagatorMockup(0, runs) {
restrictDirection(BACKWARD);
setName("backward");
setName("backward " + std::to_string(mock_id++));
}
};
@ -71,7 +75,7 @@ class ConnectMockup : public Connecting
int runs = 0;
public:
ConnectMockup(int runs = 0) : Connecting("connect"), runs(runs) {}
ConnectMockup(int runs = 0) : Connecting("connect " + std::to_string(mock_id++)), runs(runs) {}
void compute(const InterfaceState& from, const InterfaceState& to) override {
if (runs > 0)
--runs;