table: StrategyChoice no longer supports installed instances
All strategies should be registered in the strategy registry.
refs #3868
Change-Id: Ie89b0ffaf9943e591f9f2d80546b013d5cc16ff8
diff --git a/tests/daemon/fw/dummy-strategy.hpp b/tests/daemon/fw/dummy-strategy.hpp
index 6d4d45d..fb82add 100644
--- a/tests/daemon/fw/dummy-strategy.hpp
+++ b/tests/daemon/fw/dummy-strategy.hpp
@@ -97,6 +97,36 @@
shared_ptr<Face> interestOutFace;
};
+/** \brief DummyStrategy with specific version
+ */
+template<uint64_t VERSION>
+class VersionedDummyStrategy : public DummyStrategy
+{
+public:
+ static void
+ registerAs(const Name& strategyName)
+ {
+ DummyStrategy::registerAsImpl<VersionedDummyStrategy<VERSION>>(strategyName);
+ }
+
+ static Name
+ getStrategyName()
+ {
+ return DummyStrategy::getStrategyName(VERSION);
+ }
+
+ /** \brief constructor
+ *
+ * The strategy instance name is taken from \p name ; if it does not contain a version component,
+ * \p VERSION will be appended.
+ */
+ explicit
+ VersionedDummyStrategy(Forwarder& forwarder, const Name& name = getStrategyName())
+ : DummyStrategy(forwarder, Strategy::makeInstanceName(name, getStrategyName()))
+ {
+ }
+};
+
} // namespace tests
} // namespace nfd