• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

ParadoxGameConverters / Vic3ToHoI4 / 19107295354

05 Nov 2025 03:33PM UTC coverage: 92.825% (-1.0%) from 93.807%
19107295354

push

github

web-flow
Update commons (#769)

* Update commons

* Fixes for coverage

25020 of 26954 relevant lines covered (92.82%)

50121.96 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

93.85
/src/mappers/flags/flag_mapper_tests.cpp
1
#include <external/commonItems/OSCompatibilityLayer.h>
2
#include <external/commonItems/external/googletest/googlemock/include/gmock/gmock-matchers.h>
3
#include <external/commonItems/external/googletest/googletest/include/gtest/gtest.h>
4
#include <external/fmt/include/fmt/format.h>
5

6
#include <filesystem>
7

8
#include "src/mappers/flags/flag_mapper.h"
9

10

11

12
using std::filesystem::path;
13

14

15

16
namespace
17
{
18

19
path CreateTestFolders(std::string_view test_name)
4✔
20
{
21
   const path test_path(test_name);
4✔
22

23
   path flag_folder = "output" / test_path / "gfx/flags";
4✔
24
   remove_all(flag_folder);
4✔
25
   create_directories(flag_folder);
4✔
26
   create_directories(flag_folder / "small");
4✔
27
   create_directories(flag_folder / "medium");
4✔
28
   return flag_folder;
4✔
29
}
4✔
30

31
}  // namespace
32

33

34

35
namespace mappers
36
{
37

38
TEST(MappersFlagsFlagMapper, SingleFlagsAreCopied)
4✔
39
{
40
   const path base_folder = CreateTestFolders("SingleFlagsAreCopied");
1✔
41
   FlagMapper flag_mapper(base_folder,
42
       std::map<std::string, path>{
×
43
           {"ABC", "test_files/hoi4_world/flags/gfx/flags/ABC.tga"},
44
           {"DEF", "test_files/hoi4_world/flags/gfx/flags/DEF.tga"},
45
       },
4✔
46
       {});
3✔
47
   EXPECT_TRUE(flag_mapper.CopyFlag("TAG"));
2✔
48
   // Won't override existing flag.
49
   EXPECT_FALSE(flag_mapper.CopyFlag("DEF"));
2✔
50
   // Refuses to use DEF since it exists, so it's now out of flags.
51
   EXPECT_FALSE(flag_mapper.CopyFlag("Z00"));
2✔
52
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "TAG.tga"));
1✔
53
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "small/TAG.tga"));
1✔
54
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "medium/TAG.tga"));
1✔
55
   EXPECT_FALSE(commonItems::DoesFileExist(base_folder / "Z00.tga"));
1✔
56
   EXPECT_FALSE(commonItems::DoesFileExist(base_folder / "DEF.tga"));
1✔
57
}
2✔
58

59

60
TEST(MappersFlagsFlagMapper, MultipleFlagsAreCopied)
4✔
61
{
62
   const path base_folder = CreateTestFolders("MultipleFlagsAreCopied");
1✔
63
   FlagMapper flag_mapper(base_folder,
64
       std::map<std::string, path>{
×
65
           {"ABC", "test_files/hoi4_world/flags/gfx/flags/ABC.tga"},
66
           {"DEF", "test_files/hoi4_world/flags/gfx/flags/DEF.tga"},
67
       },
4✔
68
       {});
3✔
69
   auto tags = std::vector<std::string>{"TAG", "Z00"};
4✔
70
   EXPECT_TRUE(flag_mapper.CopyFlags(tags));
1✔
71
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "TAG.tga"));
1✔
72
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "small/TAG.tga"));
1✔
73
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "medium/TAG.tga"));
1✔
74
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "Z00.tga"));
1✔
75
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "small/Z00.tga"));
1✔
76
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "medium/Z00.tga"));
1✔
77
   EXPECT_FALSE(commonItems::DoesFileExist(base_folder / "DEF.tga"));
1✔
78
}
4✔
79

80

81
TEST(MappersFlagsFlagMapper, ExistingFlagsAreNotCopied)
4✔
82
{
83
   const path base_folder = CreateTestFolders("ExistingFlagsAreNotCopied");
1✔
84
   FlagMapper flag_mapper(base_folder,
85
       std::map<std::string, path>{
×
86
           {"ABC", "test_files/hoi4_world/flags/gfx/flags/ABC.tga"},
87
           {"DEF", "test_files/hoi4_world/flags/gfx/flags/DEF.tga"},
88
       },
4✔
89
       {});
3✔
90
   auto tags = std::vector<std::string>{"TAG", "Z00", "DEF"};
5✔
91
   // Will return false because there aren't enough flags for Z00.
92
   EXPECT_FALSE(flag_mapper.CopyFlags(tags));
1✔
93
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "TAG.tga"));
1✔
94
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "small/TAG.tga"));
1✔
95
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "medium/TAG.tga"));
1✔
96
   EXPECT_FALSE(commonItems::DoesFileExist(base_folder / "Z00.tga"));
1✔
97
   EXPECT_FALSE(commonItems::DoesFileExist(base_folder / "DEF.tga"));
1✔
98
}
4✔
99

100

101
TEST(MappersFlagsFlagMapper, CustomFlagsAreNotCopied)
4✔
102
{
103
   const path base_folder = CreateTestFolders("CustomFlagsAreNotCopied");
1✔
104
   FlagMapper flag_mapper(base_folder,
105
       std::map<std::string, path>{
×
106
           {"ABC", "test_files/hoi4_world/flags/gfx/flags/ABC.tga"},
107
           {"DEF", "test_files/hoi4_world/flags/gfx/flags/DEF.tga"},
108
       },
4✔
109
       {"TAG"});
3✔
110
   auto tags = std::vector<std::string>{"TAG", "Z00", "DEF"};
5✔
111
   // TAG has a custom flag so Z00 can be assigned one.
112
   EXPECT_TRUE(flag_mapper.CopyFlags(tags));
1✔
113
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "Z00.tga"));
1✔
114
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "small/Z00.tga"));
1✔
115
   EXPECT_TRUE(commonItems::DoesFileExist(base_folder / "medium/Z00.tga"));
1✔
116
   EXPECT_FALSE(commonItems::DoesFileExist(base_folder / "TAG.tga"));
1✔
117
   EXPECT_FALSE(commonItems::DoesFileExist(base_folder / "ABC.tga"));
1✔
118
   EXPECT_FALSE(commonItems::DoesFileExist(base_folder / "DEF.tga"));
1✔
119
}
4✔
120

121
}  // namespace mappers
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc