public TheSaveReadMeMdIfChangedMethod()
            {
                _package = new Package
                {
                    HasReadMe = false,
                };
                _edit = new EditPackageVersionReadMeRequest
                {
                    ReadMe = new ReadMeRequest
                    {
                        SourceText = "# Title" + Environment.NewLine + "Some *groovy* content.",
                        SourceType = "written",
                    },
                    ReadMeState = PackageEditReadMeState.Changed,
                };
                _encoding = Encoding.UTF8;

                _packageFileService = new Mock <IPackageFileService>();
                _entitiesContext    = new Mock <IEntitiesContext>();
                _markdownService    = new Mock <IMarkdownService>();

                _target = new ReadMeService(
                    _packageFileService.Object,
                    _entitiesContext.Object,
                    _markdownService.Object);
            }
Exemple #2
0
            public void ConvertsMarkdownToHtml(string originalMd, string expectedHtml, bool imageRewriteExpected)
            {
                var readMeResult = ReadMeService.GetReadMeHtml(originalMd);

                Assert.Equal(expectedHtml, StripNewLines(readMeResult.Content));
                Assert.Equal(imageRewriteExpected, readMeResult.ImagesRewritten);
            }
Exemple #3
0
            public async Task WhenInvalidUrl_ThrowsInvalidOperationException(string url)
            {
                // Arrange.
                var request = ReadMeServiceFacts.GetReadMeRequest(ReadMeService.TypeUrl, "markdown");

                // Act & Assert.
                await Assert.ThrowsAsync <ArgumentException>(() => ReadMeService.GetReadMeMdAsync(request, Encoding.UTF8));
            }
Exemple #4
0
            public async Task WhenFileAndExtensionInvalid_ThrowsInvalidOperationException(string fileExt)
            {
                // Arrange.
                var request = ReadMeServiceFacts.GetReadMeRequest(ReadMeService.TypeFile, "markdown", fileName: $"README.{fileExt}");

                // Act & Assert.
                await Assert.ThrowsAsync <InvalidOperationException>(() => ReadMeService.GetReadMeMdAsync(request, Encoding.UTF8));
            }
Exemple #5
0
            public async Task WhenValid_ReturnsSourceContent(string sourceType)
            {
                // Arrange.
                var request = ReadMeServiceFacts.GetReadMeRequest(sourceType, "markdown");

                // Act & Assert.
                Assert.Equal("markdown", await ReadMeService.GetReadMeMdAsync(request, Encoding.UTF8));
            }
Exemple #6
0
            public async Task WhenMaxLengthExceeded_ThrowsInvalidOperationException(string sourceType)
            {
                // Arrange.
                var request = ReadMeServiceFacts.GetReadMeRequest(ReadMeService.TypeWritten, LargeMarkdown);

                // Act & Assert.
                await Assert.ThrowsAsync <InvalidOperationException>(() => ReadMeService.GetReadMeMdAsync(request, Encoding.UTF8));
            }
Exemple #7
0
            public async Task WhenInvalidSourceType_ThrowsInvalidOperationException(string sourceType)
            {
                // Arrange.
                var request = ReadMeServiceFacts.GetReadMeRequest(sourceType, "markdown");

                // Act & Assert.
                await Assert.ThrowsAsync <InvalidOperationException>(() => ReadMeService.GetReadMeMdAsync(request, Encoding.UTF8));
            }
            public async Task WhenReadMeDoesNotExistReturnsNull()
            {
                // Arrange
                var readMeService = new ReadMeService(new Mock <IPackageFileService>().Object, new Mock <IEntitiesContext>().Object);
                var package       = new Package()
                {
                    HasReadMe = false
                };

                // Act & Assert
                Assert.Null(await readMeService.GetReadMeHtmlAsync(package));
            }
Exemple #9
0
 public void ConvertsMarkdownToHtml(string originalMd, string expectedHtml)
 {
     Assert.Equal(expectedHtml, StripNewLines(ReadMeService.GetReadMeHtml(originalMd)));
 }
Exemple #10
0
 public void EncodesHtmlInMarkdown(string originalMd, string expectedHtml)
 {
     Assert.Equal(expectedHtml, StripNewLines(ReadMeService.GetReadMeHtml(originalMd)));
 }