#pragma once #include "metadata.hpp" #include #include #include #include #include #include #include class Manifest { public: Manifest(); ~Manifest(); const std::vector>& getIgnores() const; const std::vector& getTestPaths() const; const std::string& getTestRootPath() const; const std::string& getManifestPath() const; const std::string& getResultPath() const; const std::string& getCachePath() const; const std::string& getAccessToken() const; const std::set& getProbes() const; void doShuffle(uint32_t seed); private: friend class ManifestParser; std::string manifestPath; std::string testRootPath; std::string resultPath; std::string cachePath; std::string accessToken; std::vector> ignores; std::vector testPaths; std::set probes; }; class ManifestParser { public: static mbgl::optional parseManifest(const std::string& manifestPath, std::string testFilter); };