From c21b0f14a33f4c3121e643d45517965895211080 Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Sun, 5 Mar 2023 03:28:53 +0000 Subject: Move persistence test objects to test library --- test/testStructures.h | 52 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 test/testStructures.h (limited to 'test/testStructures.h') diff --git a/test/testStructures.h b/test/testStructures.h new file mode 100644 index 0000000..666562e --- /dev/null +++ b/test/testStructures.h @@ -0,0 +1,52 @@ +#pragma once + +#include + +struct AbsObject : public Persistence::Persistable { + std::string base; + + bool persist(Persistence::PersistenceStore & store) override; + + virtual void dummy() const = 0; +}; + +struct SubObject : public AbsObject { + std::string sub; + + bool persist(Persistence::PersistenceStore & store) override; + + void dummy() const override; + + [[nodiscard]] std::string getId() const override; +}; + +struct SubObject2 : public AbsObject { + bool persist(Persistence::PersistenceStore & store) override; + void dummy() const override; +}; + +struct TestObject : public Persistence::Persistable { + TestObject() = default; + + float flt {}; + std::string str {}; + bool bl {}; + glm::vec3 pos {}; + std::vector flts; + std::vector poss; + std::vector>> nest; + std::unique_ptr ptr; + std::unique_ptr aptr; + std::vector> vptr; + + bool persist(Persistence::PersistenceStore & store) override; +}; + +struct SharedTestObject : public Persistence::Persistable { + SharedTestObject() = default; + + std::shared_ptr sptr; + std::shared_ptr ssptr; + + bool persist(Persistence::PersistenceStore & store) override; +}; -- cgit v1.2.3