mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-09-29 11:51:24 +00:00
Make all vendor profiles pass the updated profile checks
This commit is contained in:
@@ -11,12 +11,14 @@ TEST_CASE("convert_to_nvt_type maps extruder variant strings to nozzle volume ty
|
||||
REQUIRE(convert_to_nvt_type("Direct Drive High Flow") == nvtHighFlow);
|
||||
REQUIRE(convert_to_nvt_type("Direct Drive TPU High Flow") == nvtTPUHighFlow);
|
||||
REQUIRE(convert_to_nvt_type("Direct Drive E3D High Flow") == nvtE3DHighFlow);
|
||||
REQUIRE(convert_to_nvt_type("Direct Drive Extra High Flow") == nvtExtraHighFlow);
|
||||
}
|
||||
|
||||
SECTION("Bowden variants") {
|
||||
REQUIRE(convert_to_nvt_type("Bowden Standard") == nvtStandard);
|
||||
REQUIRE(convert_to_nvt_type("Bowden High Flow") == nvtHighFlow);
|
||||
REQUIRE(convert_to_nvt_type("Bowden E3D High Flow") == nvtE3DHighFlow);
|
||||
REQUIRE(convert_to_nvt_type("Bowden Extra High Flow") == nvtExtraHighFlow);
|
||||
}
|
||||
|
||||
SECTION("Unparsable strings fall back to hybrid") {
|
||||
@@ -35,7 +37,7 @@ TEST_CASE("convert_to_nvt_type maps extruder variant strings to nozzle volume ty
|
||||
TEST_CASE("E3D High Flow is nozzle volume type 5, after the reserved 4", "[Config]")
|
||||
{
|
||||
REQUIRE(int(nvtE3DHighFlow) == 5);
|
||||
REQUIRE(get_valid_nozzle_volume_type() == std::set<NozzleVolumeType>{nvtStandard, nvtHighFlow, nvtTPUHighFlow, nvtE3DHighFlow});
|
||||
REQUIRE(get_valid_nozzle_volume_type() == std::set<NozzleVolumeType>{nvtStandard, nvtHighFlow, nvtTPUHighFlow, nvtE3DHighFlow, nvtExtraHighFlow});
|
||||
REQUIRE(get_nozzle_volume_type_string(nvtE3DHighFlow) == "E3D High Flow");
|
||||
REQUIRE(get_extruder_variant_string(etDirectDrive, nvtE3DHighFlow) == "Direct Drive E3D High Flow");
|
||||
REQUIRE(get_extruder_variant_string(etBowden, nvtE3DHighFlow) == "Bowden E3D High Flow");
|
||||
@@ -55,6 +57,28 @@ TEST_CASE("E3D High Flow is nozzle volume type 5, after the reserved 4", "[Confi
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE("Extra High Flow is nozzle volume type 6, after E3D High Flow", "[Config]")
|
||||
{
|
||||
REQUIRE(int(nvtExtraHighFlow) == 6);
|
||||
REQUIRE(get_nozzle_volume_type_string(nvtExtraHighFlow) == "Extra High Flow");
|
||||
REQUIRE(get_extruder_variant_string(etDirectDrive, nvtExtraHighFlow) == "Direct Drive Extra High Flow");
|
||||
REQUIRE(get_extruder_variant_string(etBowden, nvtExtraHighFlow) == "Bowden Extra High Flow");
|
||||
|
||||
SECTION("nozzle_volume_type round-trips it by name") {
|
||||
DynamicPrintConfig config;
|
||||
config.set_deserialize_strict("nozzle_volume_type", "Standard,Extra High Flow");
|
||||
REQUIRE(config.option<ConfigOptionEnumsGeneric>("nozzle_volume_type")->values == std::vector<int>{nvtStandard, nvtExtraHighFlow});
|
||||
REQUIRE(config.opt_serialize("nozzle_volume_type") == "Standard,Extra High Flow");
|
||||
}
|
||||
|
||||
SECTION("its variant is found by value, not mistaken for High Flow") {
|
||||
const std::vector<std::string> variant_list = {"Direct Drive Standard", "Direct Drive High Flow", "Direct Drive Extra High Flow"};
|
||||
const std::vector<int> variant_ids = {1, 1, 1};
|
||||
REQUIRE(get_config_index_base(nvtExtraHighFlow, etDirectDrive, 1, variant_list, variant_ids) == 2);
|
||||
REQUIRE(get_config_index_base(nvtHighFlow, etDirectDrive, 1, variant_list, variant_ids) == 1);
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE("get_extruder_supported_nozzle_volume_types reads the extruder's variant list", "[Config]")
|
||||
{
|
||||
DynamicPrintConfig config;
|
||||
@@ -72,6 +96,11 @@ TEST_CASE("get_extruder_supported_nozzle_volume_types reads the extruder's varia
|
||||
REQUIRE(get_extruder_supported_nozzle_volume_types(config, 1) == std::set<NozzleVolumeType>{nvtStandard, nvtE3DHighFlow});
|
||||
}
|
||||
|
||||
SECTION("an Extra High Flow list does not report plain High Flow") {
|
||||
config.option<ConfigOptionStrings>("extruder_variant_list")->values[1] = "Direct Drive Standard,Direct Drive Extra High Flow";
|
||||
REQUIRE(get_extruder_supported_nozzle_volume_types(config, 1) == std::set<NozzleVolumeType>{nvtStandard, nvtExtraHighFlow});
|
||||
}
|
||||
|
||||
SECTION("an extruder past the profile's lists gives the empty, unknown set") {
|
||||
REQUIRE(get_extruder_supported_nozzle_volume_types(config, 2).empty());
|
||||
REQUIRE(get_extruder_supported_nozzle_volume_types(config, -1).empty());
|
||||
|
||||
Reference in New Issue
Block a user