chore: add abstraction for opening output files to be able to mock it

This commit is contained in:
Jan
2025-01-07 00:02:38 +01:00
parent cacccf64e1
commit e0f8b3d3ca
25 changed files with 202 additions and 68 deletions

View File

@ -0,0 +1,28 @@
#pragma once
#include "SearchPath/IOutputPath.h"
#include <sstream>
#include <string>
#include <vector>
class MockOutputFile
{
public:
std::string m_name;
std::string m_data;
MockOutputFile();
MockOutputFile(std::string name, std::string data);
};
class MockOutputPath final : public IOutputPath
{
public:
std::unique_ptr<std::ostream> Open(const std::string& fileName) override;
[[nodiscard]] const MockOutputFile* GetMockedFile(const std::string& name) const;
private:
std::vector<MockOutputFile> m_files;
};