Пример #1
0
                public void Should_Throw_If_Header_Is_Missing_Version()
                {
                    // Given
                    var          parser  = new ReleaseNotesParser();
                    const string content = "### Hello World (Released 2014-06-29)";

                    // When
                    var result = Record.Exception(() => parser.Parse(content));

                    // Then
                    Assert.IsType <CakeException>(result);
                    Assert.Equal("Could not parse version from release notes header.", result?.Message);
                }
Пример #2
0
                public void Should_Parse_Release_Note_Text()
                {
                    // Given
                    var          parser  = new ReleaseNotesParser();
                    const string content = "* 0.1.9 - Line 1";

                    // When
                    var result = parser.Parse(content);

                    // Then
                    Assert.Equal(1, result[0].Notes.Count);
                    Assert.Equal("Line 1", result[0].Notes[0]);
                }
Пример #3
0
                public void Should_Remove_Empty_Lines_From_Release_Note_Text()
                {
                    // Given
                    var          parser  = new ReleaseNotesParser();
                    const string content = "### New in 0.1.9 (Releases 2014/06/28)\nLine 1\n  \n\t\n";

                    // When
                    var result = parser.Parse(content);

                    // Then
                    Assert.Equal(1, result[0].Notes.Count);
                    Assert.Equal("Line 1", result[0].Notes[0]);
                }
Пример #4
0
                public void Should_Return_Multiple_Release_Notes()
                {
                    // Given
                    var          parser  = new ReleaseNotesParser();
                    const string content = "### New in 0.1.9 (Releases 2014/06/28)\n* Line 1\n" +
                                           "###New in 0.1.10\n* Line 2\n Line 3";

                    // When
                    var result = parser.Parse(content);

                    // Then
                    Assert.Equal(2, result.Count);
                }
Пример #5
0
                public void Should_Return_Release_Notes_In_Descending_Order()
                {
                    // Given
                    var          parser  = new ReleaseNotesParser();
                    const string content = "* 0.1.9 Line 1\n* 0.1.10 Line 2";

                    // When
                    var result = parser.Parse(content);

                    // Then
                    Assert.Equal(2, result.Count);
                    Assert.Equal("0.1.10", result[0].Version.ToString());
                    Assert.Equal("0.1.9", result[1].Version.ToString());
                }
        public void should_return_driver_2_22_when_required_chrome_version_is_49_as_per_test_file()
        {
            //given
            var testFilePath          = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "TestFiles//ChromeReleaseNotes.txt");
            var releaseNotes          = File.ReadAllText(testFilePath);
            var releaseNotesParser    = new ReleaseNotesParser();
            var requiredChromeVersion = "49";

            //when
            var result = releaseNotesParser.FindCompatibleDriverVersion(releaseNotes, requiredChromeVersion);

            //then
            Assert.That(result, Is.EqualTo("2.22"));
        }
Пример #7
0
                public void Should_Return_Release_Notes_In_Descending_Order()
                {
                    // Given
                    var          parser  = new ReleaseNotesParser();
                    const string content = "### New in 0.1.9 (Releases 2014/06/28)\n* Line 1\n" +
                                           "###New in 0.1.10\n* Line 2\n Line 3";

                    // When
                    var result = parser.Parse(content);

                    // Then
                    Assert.Equal(2, result.Count);
                    Assert.Equal("0.1.10", result[0].Version.ToString());
                    Assert.Equal("0.1.9", result[1].Version.ToString());
                }
Пример #8
0
                public void Should_Return_Multiple_Release_Notes_With_Prerelease()
                {
                    // Given
                    var          parser  = new ReleaseNotesParser();
                    const string content = "### New in 0.1.9-alpha1 (Releases 2014/06/28)\n* Line 1\n" +
                                           "###New in 0.1.10-gamma3\n* Line 2\n Line 3";

                    // When
                    var result = parser.Parse(content);

                    // Then
                    Assert.Equal(2, result.Count);
                    Assert.Equal("0.1.10", result[0].Version.ToString());
                    Assert.Equal("0.1.9", result[1].Version.ToString());
                    Assert.Equal("0.1.10-gamma3", result[0].SemVersion.ToString());
                    Assert.Equal("0.1.9-alpha1", result[1].SemVersion.ToString());
                }
        private void BuildRemoteDriverFinder()
        {
            var chromeDriverSite = new ChromeDriverSite(_httpClientWrapper);

            if (_desiredDriver == DesiredDriver.Latest)
            {
                _remoteDriverFinder = new ChromeLatestDriverFinder(chromeDriverSite, _driverDownloader);
            }
            else if (_desiredDriver == DesiredDriver.LatestCompatible)
            {
                var versionDetector    = new ChromeVersionDetector();
                var releaseNotesParser = new ReleaseNotesParser();
                _remoteDriverFinder = new ChromeCompatibleDriverFinder(
                    versionDetector,
                    releaseNotesParser,
                    chromeDriverSite,
                    _driverDownloader
                    );
            }
            else
            {
                throw new InvalidEnumArgumentException(nameof(_desiredDriver));
            }
        }
 public void Setup()
 {
     _parser = new ReleaseNotesParser();
 }