1
0
forked from fsfw/fsfw

windows compiles, some unittests give exceptions

This commit is contained in:
2023-01-25 23:54:46 +01:00
parent 0e7c6b117f
commit dcc28622a5
28 changed files with 155 additions and 128 deletions

View File

@ -9,9 +9,9 @@ TEST_CASE("Filesystem Mock", "[mocks]") {
auto fsMock = FilesystemMock();
SECTION("Create File") {
FilesystemParams params("hello.txt");
FilesystemParams params(L"hello.txt");
CHECK(fsMock.createFile(params) == returnvalue::OK);
auto iter = fsMock.fileMap.find("hello.txt");
auto iter = fsMock.fileMap.find(L"hello.txt");
REQUIRE(iter != fsMock.fileMap.end());
FilesystemMock::FileInfo &stats = iter->second;
CHECK(stats.fileSegQueue.empty());
@ -20,10 +20,10 @@ TEST_CASE("Filesystem Mock", "[mocks]") {
SECTION("Write to File") {
std::string testData = "test data";
FileOpParams params("hello.txt", testData.size());
FileOpParams params(L"hello.txt", testData.size());
CHECK(fsMock.writeToFile(params, reinterpret_cast<const uint8_t *>(testData.data())) ==
returnvalue::OK);
auto iter = fsMock.fileMap.find("hello.txt");
auto iter = fsMock.fileMap.find(L"hello.txt");
REQUIRE(iter != fsMock.fileMap.end());
FilesystemMock::FileInfo &stats = iter->second;
CHECK(not stats.fileSegQueue.empty());
@ -37,10 +37,10 @@ TEST_CASE("Filesystem Mock", "[mocks]") {
}
SECTION("Create Directory") {
FilesystemParams params("hello");
FilesystemParams params(L"hello");
CHECK(fsMock.createDirectory(params) == returnvalue::OK);
REQUIRE(not fsMock.dirMap.empty());
auto iter = fsMock.dirMap.find("hello");
auto iter = fsMock.dirMap.find(L"hello");
REQUIRE(iter != fsMock.dirMap.end());
auto &dirInfo = iter->second;
CHECK(dirInfo.createCallCount == 1);

View File

@ -4,6 +4,7 @@
#include <filesystem>
#include <fstream>
#include <random>
#include <array>
#include "fsfw/serialize/SerializeIF.h"
#include "fsfw_hal/host/HostFilesystem.h"
@ -92,9 +93,9 @@ TEST_CASE("Host Filesystem", "[hal][host]") {
CHECK(fs::is_regular_file(file0));
REQUIRE(fs::exists(file0));
// Write first file chunk
CHECK(hostFs.writeToFile(params, randData.cbegin()) == returnvalue::OK);
CHECK(hostFs.writeToFile(params, randData.data()) == returnvalue::OK);
params.offset = 256;
CHECK(hostFs.writeToFile(params, randData.cbegin() + 256) == returnvalue::OK);
CHECK(hostFs.writeToFile(params, randData.data() + 256) == returnvalue::OK);
std::ifstream rf(file0, ios::binary);
std::array<uint8_t, 512> readBack{};
REQUIRE(std::filesystem::file_size(file0) == 512);