mirror of
https://github.com/microsoft/PowerToys.git
synced 2025-12-16 11:48:06 +01:00
98 lines
3.7 KiB
C++
98 lines
3.7 KiB
C++
|
|
#include "pch.h"
|
||
|
|
|
||
|
|
#include "VersionHelper.h"
|
||
|
|
|
||
|
|
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
|
||
|
|
|
||
|
|
namespace UnitTestsVersionHelper
|
||
|
|
{
|
||
|
|
const int MAJOR_VERSION_0 = 0;
|
||
|
|
const int MINOR_VERSION_12 = 12;
|
||
|
|
const int REVISION_VERSION_0 = 0;
|
||
|
|
|
||
|
|
TEST_CLASS(UnitTestsVersionHelper)
|
||
|
|
{
|
||
|
|
public:
|
||
|
|
TEST_METHOD(integerConstructorShouldProprelyInitializateVersionNumbers)
|
||
|
|
{
|
||
|
|
VersionHelper sut(MAJOR_VERSION_0, MINOR_VERSION_12, REVISION_VERSION_0);
|
||
|
|
|
||
|
|
Assert::AreEqual(MAJOR_VERSION_0, sut.major);
|
||
|
|
Assert::AreEqual(MINOR_VERSION_12, sut.minor);
|
||
|
|
Assert::AreEqual(REVISION_VERSION_0, sut.revision);
|
||
|
|
}
|
||
|
|
TEST_METHOD(integerConstructorShouldProprelyInitializateWithDifferentVersionNumbers)
|
||
|
|
{
|
||
|
|
const int testcaseMajor = 2;
|
||
|
|
const int testcaseMinor = 25;
|
||
|
|
const int testcaseRevision = 1;
|
||
|
|
VersionHelper sut(testcaseMajor, testcaseMinor, testcaseRevision);
|
||
|
|
|
||
|
|
Assert::AreEqual(testcaseMajor, sut.major);
|
||
|
|
Assert::AreEqual(testcaseMinor, sut.minor);
|
||
|
|
Assert::AreEqual(testcaseRevision, sut.revision);
|
||
|
|
}
|
||
|
|
TEST_METHOD(stringConstructorShouldProprelyInitializateVersionNumbers)
|
||
|
|
{
|
||
|
|
|
||
|
|
VersionHelper sut("v0.12.3");
|
||
|
|
|
||
|
|
Assert::AreEqual(0, sut.major);
|
||
|
|
Assert::AreEqual(12, sut.minor);
|
||
|
|
Assert::AreEqual(3, sut.revision);
|
||
|
|
}
|
||
|
|
TEST_METHOD(stringConstructorShouldProprelyInitializateWithDifferentVersionNumbers)
|
||
|
|
{
|
||
|
|
VersionHelper sut("v2.25.1");
|
||
|
|
|
||
|
|
Assert::AreEqual(2, sut.major);
|
||
|
|
Assert::AreEqual(25, sut.minor);
|
||
|
|
Assert::AreEqual(1, sut.revision);
|
||
|
|
}
|
||
|
|
TEST_METHOD(whenMajorVersionIsGreaterComparationOperatorShouldReturnProperValue)
|
||
|
|
{
|
||
|
|
VersionHelper rhs(MAJOR_VERSION_0, MINOR_VERSION_12, REVISION_VERSION_0);
|
||
|
|
VersionHelper lhs(MAJOR_VERSION_0 + 1, MINOR_VERSION_12, REVISION_VERSION_0);
|
||
|
|
|
||
|
|
Assert::IsTrue(lhs > rhs);
|
||
|
|
}
|
||
|
|
TEST_METHOD(whenMajorVersionIsLesserComparationOperatorShouldReturnProperValue)
|
||
|
|
{
|
||
|
|
VersionHelper rhs(MAJOR_VERSION_0 + 1, MINOR_VERSION_12, REVISION_VERSION_0);
|
||
|
|
VersionHelper lhs(MAJOR_VERSION_0, MINOR_VERSION_12, REVISION_VERSION_0);
|
||
|
|
|
||
|
|
Assert::IsFalse(lhs > rhs);
|
||
|
|
}
|
||
|
|
TEST_METHOD(whenMajorVersionIsEqualComparationOperatorShouldCompareMinorVersionValue)
|
||
|
|
{
|
||
|
|
VersionHelper rhs(MAJOR_VERSION_0, MINOR_VERSION_12 - 1, REVISION_VERSION_0);
|
||
|
|
|
||
|
|
VersionHelper lhs(MAJOR_VERSION_0, MINOR_VERSION_12, REVISION_VERSION_0);
|
||
|
|
|
||
|
|
Assert::IsTrue(lhs > rhs);
|
||
|
|
}
|
||
|
|
TEST_METHOD(whenMajorVersionIsEqualComparationOperatorShouldCompareMinorVersionValue2)
|
||
|
|
{
|
||
|
|
VersionHelper rhs(MAJOR_VERSION_0, MINOR_VERSION_12, REVISION_VERSION_0);
|
||
|
|
VersionHelper lhs(MAJOR_VERSION_0, MINOR_VERSION_12 - 1, REVISION_VERSION_0);
|
||
|
|
|
||
|
|
Assert::IsFalse(lhs > rhs);
|
||
|
|
}
|
||
|
|
|
||
|
|
TEST_METHOD(whenMajorAndMinorVersionIsEqualComparationOperatorShouldCompareRevisionValue)
|
||
|
|
{
|
||
|
|
VersionHelper rhs(MAJOR_VERSION_0, MINOR_VERSION_12, REVISION_VERSION_0);
|
||
|
|
VersionHelper lhs(MAJOR_VERSION_0, MINOR_VERSION_12, REVISION_VERSION_0 + 1);
|
||
|
|
|
||
|
|
Assert::IsTrue(lhs > rhs);
|
||
|
|
}
|
||
|
|
TEST_METHOD(whenMajorAndMinorVersionIsEqualComparationOperatorShouldCompareRevisionValue2)
|
||
|
|
{
|
||
|
|
VersionHelper rhs(MAJOR_VERSION_0, MINOR_VERSION_12, REVISION_VERSION_0 + 1);
|
||
|
|
VersionHelper lhs(MAJOR_VERSION_0, MINOR_VERSION_12, REVISION_VERSION_0);
|
||
|
|
|
||
|
|
Assert::IsFalse(lhs > rhs);
|
||
|
|
}
|
||
|
|
};
|
||
|
|
}
|