Esempio n. 1
0
        public void ParseVersion_NullInput()
        {
            // Arrange
            var target = GetToolsService();
            ParseVersionInput input = null;

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

            // Assert
            Assert.Same(input, output.Input);
            Assert.Equal(InputStatus.Missing, output.InputStatus);
            Assert.Null(output.Version);
        }
Esempio n. 2
0
        public void ParseVersion_ValidVersion()
        {
            // Arrange
            var target = GetToolsService();
            var input  = new ParseVersionInput
            {
                Version = "1.0.0-beta"
            };

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

            // Assert
            Assert.Same(input, output.Input);
            Assert.Equal(InputStatus.Valid, output.InputStatus);
            Assert.Equal(GetVersionNormalizedString(input.Version), output.Version.NormalizedString);
        }
Esempio n. 3
0
        public void ParseVersion_InvalidVersion()
        {
            // Arrange
            var target = GetToolsService();
            var input  = new ParseVersionInput
            {
                Version = "1.0.0.0.0"
            };

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

            // Assert
            Assert.Same(input, output.Input);
            Assert.Equal(InputStatus.Invalid, output.InputStatus);
            Assert.Null(output.Version);
        }
Esempio n. 4
0
        public ParseVersionOutput ParseVersion(ParseVersionInput input)
        {
            var output = new ParseVersionOutput
            {
                InputStatus = InputStatus.Missing,
                Input       = input
            };

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

            return(output);
        }
Esempio n. 5
0
        public async Task <IActionResult> ParseVersion([FromRoute] string nuGetVersion, [FromQuery] ParseVersionInput 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.ParseVersion(input);
            var versionedOutput = await GetSelectedVersionOutputAsync(toolsService, output, token);

            return(View(versionedOutput));
        }