blob: 65fa19631834df6e9fe0c411cdc12ff6b8dbe055 [file] [log] [blame]
Matt Spinlerd3335df2019-07-10 11:04:21 -05001#include <filesystem>
2#include <memory>
3#include <vector>
4
5#include <gtest/gtest.h>
6
7/**
8 * @brief Tells the factory which PEL to create
9 */
10enum class TestPelType
11{
12 pelSimple,
Matt Spinler03c1d912019-07-10 14:12:15 -050013 privateHeaderSimple,
14 userHeaderSimple
Matt Spinlerd3335df2019-07-10 11:04:21 -050015};
16
17/**
18 * @brief PEL data factory, for testing
19 *
20 * @param[in] type - the type of data to create
21 *
22 * @return std::unique_ptr<std::vector<uint8_t>> - the PEL data
23 */
24std::unique_ptr<std::vector<uint8_t>> pelDataFactory(TestPelType type);
25
26/**
27 * @brief Helper function to read raw PEL data from a file
28 *
29 * @param[in] path - the path to read
30 *
31 * @return std::unique_ptr<std::vector<uint8_t>> - the data from the file
32 */
33std::unique_ptr<std::vector<uint8_t>>
34 readPELFile(const std::filesystem::path& path);