Example #1
0
        public async void DoesntChangeArticleWhenNoImagesDetected()
        {
            var sampleArticle = new MercuryArticle
            {
                Content = "asdasdasdasdasdasdasdasd"
            };

            await ImageInliner.InlineImagesAsync(sampleArticle);

            Assert.Equal("asdasdasdasdasdasdasdasd", sampleArticle.Content);
        }
Example #2
0
        public async void DoesntThrowAndRemovesImgTagWhenImagesHaveIncorrectUrl()
        {
            var sampleArticle = new MercuryArticle
            {
                Content = $"<img src=\"http://incorrect.url/image.gpj\">"
            };

            await ImageInliner.InlineImagesAsync(sampleArticle);

            Assert.Equal(string.Empty, sampleArticle.Content);
        }
Example #3
0
        public async void InlinesArticlesImages()
        {
            var sampleArticle = new MercuryArticle
            {
                Content = $"<img src=\"{SAMPLE_IMAGE_URL}\">asdasdasdasd<img src=\"{SAMPLE_IMAGE_URL}\">asdasdasdasd"
            };

            await ImageInliner.InlineImagesAsync(sampleArticle);

            Assert.Equal($"<img src=\"data:image/jpeg;base64,{SAMPLE_IMAGE_AS_BASE64}\">asdasdasdasd<img src=\"data:image/jpeg;base64,{SAMPLE_IMAGE_AS_BASE64}\">asdasdasdasd", sampleArticle.Content);
        }
Example #4
0
        public static ThemeBuilderItem Get(string sourcePath, ThemeId theme, string[] lessPaths)
        {
            var lessParser = new ThemeBuilderLessParser(ThemeBuilderLessFilesReader.ReadPaths(lessPaths));
            var meta       = lessParser.GenerateThemeBuilderMetadata();

            string lessData = ThemeBuilderLessFilesReader.ReadPaths(lessPaths);

            lessData = ImageInliner.InlineImages(lessData, sourcePath);
            lessData = ThemeBuilderLessParser.MinifyLess(lessData);

            return(new ThemeBuilderItem
            {
                Metadata = meta,
                LessTemplate = lessData
            });
        }