summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorbd <bdunahu@operationnull.com>2025-04-23 00:27:50 -0400
committerbd <bdunahu@operationnull.com>2025-04-23 00:27:50 -0400
commit051041c9cbe0752a50ac1a464df1c554b10cde0c (patch)
tree8eee7e2104b6aba4a03f4e9bccc2c93314f2bbf2 /tests
parent7bbc7c7fea9bafc55754a1cf010f6553cce7d659 (diff)
Move dum class to tests folder
Diffstat (limited to 'tests')
-rw-r--r--tests/dum.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/dum.h b/tests/dum.h
new file mode 100644
index 0000000..5bfc646
--- /dev/null
+++ b/tests/dum.h
@@ -0,0 +1,35 @@
+#ifndef DUM_H
+#define DUM_H
+
+#include "instrDTO.h"
+#include "response.h"
+#include "stage.h"
+
+/**
+ * Don't underestimate mocks (the DUM pipe stage).
+ */
+class DUM : public Stage
+{
+ public:
+ using Stage::Stage;
+
+ InstrDTO *advance(Response p) override
+ {
+ InstrDTO *r = nullptr;
+
+ if (this->curr_instr && p == WAIT) {
+ r = new InstrDTO(*this->curr_instr);
+ delete this->curr_instr;
+ curr_instr = nullptr;
+ }
+
+ return r;
+ }
+
+ void set_curr_instr(InstrDTO *d) { this->curr_instr = d; };
+
+ private:
+ void advance_helper() override{};
+};
+
+#endif /* DUM_H_INCLUDED */