Exemple #1
0
        public void ParseVersionRange_NullInput()
        {
            // Arrange
            var target = GetToolsService();
            ParseVersionRangeInput input = null;

            // Act
            var output = target.ParseVersionRange(input);

            // Assert
            Assert.Same(input, output.Input);
            Assert.Equal(InputStatus.Missing, output.InputStatus);
            Assert.Null(output.VersionRange);
        }
Exemple #2
0
        public void ParseVersionRange_InvalidVersionRange()
        {
            // Arrange
            var target = GetToolsService();
            var input  = new ParseVersionRangeInput
            {
                VersionRange = "a"
            };

            // Act
            var output = target.ParseVersionRange(input);

            // Assert
            Assert.Same(input, output.Input);
            Assert.Equal(InputStatus.Invalid, output.InputStatus);
            Assert.Null(output.VersionRange);
        }
Exemple #3
0
        public void ParseVersionRange_ValidVersionRange()
        {
            // Arrange
            var target = GetToolsService();
            var input  = new ParseVersionRangeInput
            {
                VersionRange = "(, 1.0.0-beta]"
            };

            // Act
            var output = target.ParseVersionRange(input);

            // Assert
            Assert.Same(input, output.Input);
            Assert.Equal(InputStatus.Valid, output.InputStatus);
            Assert.Equal(GetVersionRangeNormalizedString(input.VersionRange), output.VersionRange.NormalizedString);
        }
Exemple #4
0
        public ParseVersionRangeOutput ParseVersionRange(ParseVersionRangeInput input)
        {
            var output = new ParseVersionRangeOutput
            {
                InputStatus = InputStatus.Missing,
                Input       = input
            };

            if (input != null &&
                !string.IsNullOrWhiteSpace(input.VersionRange))
            {
                try
                {
                    output.VersionRange = _versionRangeLogic.Parse(input.VersionRange);
                    output.InputStatus  = InputStatus.Valid;
                }
                catch (Exception)
                {
                    output.InputStatus = InputStatus.Invalid;
                }
            }

            return(output);
        }
Exemple #5
0
        public async Task <IActionResult> ParseVersionRange([FromRoute] string nuGetVersion, [FromQuery] ParseVersionRangeInput input, CancellationToken token)
        {
            var redirect = GetVersionRedirect();

            if (redirect != null)
            {
                return(redirect);
            }

            var toolsService = await _toolsFactory.GetServiceAsync(nuGetVersion, token);

            if (toolsService == null)
            {
                return(NotFound());
            }

            var output          = toolsService.ParseVersionRange(input);
            var versionedOutput = await GetSelectedVersionOutputAsync(toolsService, output, token);

            return(View(versionedOutput));
        }