Пример #1
0
        public void TryParse_ToString_BestGuess(string str, string guess)
        {
            var success = SemVer.TryParse(str, out var version);

            Assert.False(success);
            Assert.Equal(guess, version.ToString());
        }
Пример #2
0
        public void Parse_Invalid_With_Best_Guess(string str, string expectedGuess,
                                                  int expectedIndex, string expectedError)
        {
            Assert.Throws <FormatException>(() => SemVer.Parse(str));
            var success = SemVer.TryParse(str, out var version, out var error);

            Assert.False(success);
            Assert.Equal(expectedGuess, version.ToString());
            Assert.Equal($"Error parsing version string '{ str }' at index { expectedIndex }: { expectedError }", error);
        }
Пример #3
0
 private static SemVer DecodeVersion(string value, string property)
 {
     if (SemVer.TryParse(value, out var parsed))
     {
         return(parsed.Value);
     }
     else
     {
         throw new MsBuildException($"{property} could not be parsed from {value}");
     }
 }
Пример #4
0
        public static SemVer ParseMinSemVer(System.CommandLine.Parsing.ArgumentResult result)
        {
            if (result.Tokens.Count == 0)
            {
                return(Program.DefaultOptions.MinimumVersion);
            }

            var tokenValue = result.Tokens.Single().Value;

            if (!SemVer.TryParse(tokenValue, out var version))
            {
                result.ErrorMessage = $"Failed to parse version {tokenValue} for option {result.Argument.Name}";
                return(Program.DefaultOptions.MinimumVersion);
            }

            return(version.Value);
        }
Пример #5
0
 public void InvalidVersionsFailParse(string version)
 {
     SemVer.TryParse(version, out _).Should().BeFalse();
     Assert.Throws <FormatException>(() => SemVer.Parse(version));
 }
Пример #6
0
 public void Parse_Methods_ThrowOnNull()
 {
     Assert.Throws <ArgumentNullException>(() => SemVer.Parse(null));
     Assert.Throws <ArgumentNullException>(() => SemVer.TryParse(null, out var v));
     Assert.Throws <ArgumentNullException>(() => SemVer.TryParse(null, out var v, out var e));
 }