bsputil: fix --extract-entities and --extract-textures command line parsing
Fixes #435
This commit is contained in:
parent
2354209fea
commit
0b2395dacd
|
|
@ -61,10 +61,10 @@ bsputil_settings::bsputil_settings() :
|
||||||
return this->load_setting<settings::setting_string>(name, parser, src, "");
|
return this->load_setting<settings::setting_string>(name, parser, src, "");
|
||||||
}, nullptr, "Replace BSP entities with the given files' contents"},
|
}, nullptr, "Replace BSP entities with the given files' contents"},
|
||||||
extract_entities{this, "extract-entities", [&](const std::string &name, parser_base_t &parser, settings::source src) {
|
extract_entities{this, "extract-entities", [&](const std::string &name, parser_base_t &parser, settings::source src) {
|
||||||
return this->load_setting<settings::setting_string>(name, parser, src, "");
|
return this->load_setting<settings::setting_bool>(name, parser, src, "");
|
||||||
}, nullptr, "Extract BSP entities to the given file name"},
|
}, nullptr, "Extract BSP entities to the given file name"},
|
||||||
extract_textures{this, "extract-textures", [&](const std::string &name, parser_base_t &parser, settings::source src) {
|
extract_textures{this, "extract-textures", [&](const std::string &name, parser_base_t &parser, settings::source src) {
|
||||||
return this->load_setting<settings::setting_string>(name, parser, src, "");
|
return this->load_setting<settings::setting_bool>(name, parser, src, "");
|
||||||
}, nullptr, "Extract BSP texutres to the given wad file"},
|
}, nullptr, "Extract BSP texutres to the given wad file"},
|
||||||
replace_textures{this, "replace-textures", [&](const std::string &name, parser_base_t &parser, settings::source src) {
|
replace_textures{this, "replace-textures", [&](const std::string &name, parser_base_t &parser, settings::source src) {
|
||||||
return this->load_setting<settings::setting_string>(name, parser, src, "");
|
return this->load_setting<settings::setting_string>(name, parser, src, "");
|
||||||
|
|
|
||||||
|
|
@ -71,3 +71,27 @@ TEST(bsputil, extractTextures)
|
||||||
EXPECT_TRUE(loaded_tex);
|
EXPECT_TRUE(loaded_tex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TEST(bsputil, parseExtractTextures)
|
||||||
|
{
|
||||||
|
bsputil_settings settings;
|
||||||
|
|
||||||
|
const char *arguments[] = {"bsputil.exe", "--extract-textures", "test.bsp"};
|
||||||
|
token_parser_t p{std::size(arguments) - 1, arguments + 1, {}};
|
||||||
|
auto remainder = settings.parse(p);
|
||||||
|
|
||||||
|
ASSERT_EQ(1, remainder.size());
|
||||||
|
ASSERT_EQ("test.bsp", remainder[0]);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(bsputil, parseExtractEntities)
|
||||||
|
{
|
||||||
|
bsputil_settings settings;
|
||||||
|
|
||||||
|
const char *arguments[] = {"bsputil.exe", "--extract-entities", "test.bsp"};
|
||||||
|
token_parser_t p{std::size(arguments) - 1, arguments + 1, {}};
|
||||||
|
auto remainder = settings.parse(p);
|
||||||
|
|
||||||
|
ASSERT_EQ(1, remainder.size());
|
||||||
|
ASSERT_EQ("test.bsp", remainder[0]);
|
||||||
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue