mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-06 11:16:51 +02:00
77 lines
2.5 KiB
C#
77 lines
2.5 KiB
C#
|
|
// Copyright (c) Microsoft Corporation
|
|||
|
|
// The Microsoft Corporation licenses this file to you under the MIT license.
|
|||
|
|
// See the LICENSE file in the project root for more information.
|
|||
|
|
|
|||
|
|
using System;
|
|||
|
|
using Microsoft.PowerToys.Settings.UI.Lib.Utilities;
|
|||
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|||
|
|
|
|||
|
|
namespace CommonLibTest
|
|||
|
|
{
|
|||
|
|
[TestClass]
|
|||
|
|
public class HelperTest
|
|||
|
|
{
|
|||
|
|
public static void TestStringIsSmaller(string v1, string v2)
|
|||
|
|
{
|
|||
|
|
var res = Helper.CompareVersions(v1, v2);
|
|||
|
|
Assert.IsTrue(res < 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public static void TestStringsAreEqual(string v1, string v2)
|
|||
|
|
{
|
|||
|
|
var res = Helper.CompareVersions(v1, v2);
|
|||
|
|
Assert.IsTrue(res == 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void Helper_CompareVersions_ShouldBeEqual_WhenSuccessful()
|
|||
|
|
{
|
|||
|
|
TestStringsAreEqual("v0.0.0", "v0.0.0");
|
|||
|
|
TestStringsAreEqual("v0.1.1", "v0.1.1");
|
|||
|
|
TestStringsAreEqual("v1.1.1", "v1.1.1");
|
|||
|
|
TestStringsAreEqual("v1.999.99", "v1.999.99");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
public void Helper_CompareVersions_ShouldBeSmaller_WhenSuccessful()
|
|||
|
|
{
|
|||
|
|
TestStringIsSmaller("v0.0.0", "v0.0.1");
|
|||
|
|
TestStringIsSmaller("v0.0.0", "v0.1.0");
|
|||
|
|
TestStringIsSmaller("v0.0.0", "v1.0.0");
|
|||
|
|
TestStringIsSmaller("v1.0.1", "v1.0.2");
|
|||
|
|
TestStringIsSmaller("v1.1.1", "v1.1.2");
|
|||
|
|
TestStringIsSmaller("v1.1.1", "v1.2.0");
|
|||
|
|
TestStringIsSmaller("v1.999.99", "v2.0.0");
|
|||
|
|
TestStringIsSmaller("v1.0.99", "v1.2.0");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
[ExpectedException(typeof(FormatException))]
|
|||
|
|
public void Helper_CompareVersions_ShouldThrowBadFormat_WhenNoVersionString()
|
|||
|
|
{
|
|||
|
|
Helper.CompareVersions("v0.0.1", string.Empty);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
[ExpectedException(typeof(FormatException))]
|
|||
|
|
public void Helper_CompareVersions_ShouldThrowBadFormat_WhenShortVersionString()
|
|||
|
|
{
|
|||
|
|
Helper.CompareVersions("v0.0.1", "v0.1");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
[ExpectedException(typeof(FormatException))]
|
|||
|
|
public void Helper_CompareVersions_ShouldThrowBadFormat_WhenLongVersionString()
|
|||
|
|
{
|
|||
|
|
Helper.CompareVersions("v0.0.1", "v0.0.0.1");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
[TestMethod]
|
|||
|
|
[ExpectedException(typeof(FormatException))]
|
|||
|
|
public void Helper_CompareVersions_ShouldThrowBadFormat_WhenItIsNotAVersionString()
|
|||
|
|
{
|
|||
|
|
Helper.CompareVersions("v0.0.1", "HelloWorld");
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|