84 lines
4.3 KiB
C++
84 lines
4.3 KiB
C++
|
#include "catch2/catch.hpp"
|
||
|
|
||
|
#include "slic3r/Config/Version.hpp"
|
||
|
|
||
|
|
||
|
TEST_CASE("Check parsing and comparing of config versions", "[Version]") {
|
||
|
using namespace Slic3r;
|
||
|
|
||
|
GUI::Config::Version v;
|
||
|
|
||
|
v.config_version = *Semver::parse("1.1.2");
|
||
|
v.min_slic3r_version = *Semver::parse("1.38.0");
|
||
|
v.max_slic3r_version = Semver::inf();
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.38.0")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.38.0-alpha")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.37.0-alpha")));
|
||
|
|
||
|
// Test the prerelease status.
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-rc2")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0")));
|
||
|
|
||
|
v.config_version = *Semver::parse("1.1.2-alpha");
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha1")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0-beta")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0-rc2")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0")));
|
||
|
|
||
|
v.config_version = *Semver::parse("1.1.2-alpha1");
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha1")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0-beta")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0-rc2")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0")));
|
||
|
|
||
|
v.config_version = *Semver::parse("1.1.2-beta");
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0-rc")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0-rc2")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0")));
|
||
|
|
||
|
v.config_version = *Semver::parse("1.1.2-rc");
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-rc")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-rc2")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0")));
|
||
|
|
||
|
v.config_version = *Semver::parse("1.1.2-rc2");
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-alpha1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-beta1")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-rc")));
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.39.0-rc2")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.39.0")));
|
||
|
|
||
|
// Test the upper boundary.
|
||
|
v.config_version = *Semver::parse("1.1.2");
|
||
|
v.max_slic3r_version = *Semver::parse("1.39.3-beta1");
|
||
|
REQUIRE(v.is_slic3r_supported(*Semver::parse("1.38.0")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.38.0-alpha")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.38.0-alpha1")));
|
||
|
REQUIRE(! v.is_slic3r_supported(*Semver::parse("1.37.0-alpha")));
|
||
|
}
|