public void Markdown_Controller()
        {
            var markdownController = new MarkdownController();
            var article            = markdownController.getArticle(Guid.Empty.str());

            Assert.IsNull(article);
        }
        public MarkdownControllerTests()
        {
            _fixture = new Fixture();

            _textMiddlewareMock = Substitute.For <ITextMiddlewareBuilder>();
            _markdownController = new MarkdownController(_textMiddlewareMock);
        }
Example #3
0
        public void GetAllMarkdownsReturnsListOfMarkdowns()
        {
            Mock <IDataAccessor <Markdown> > mockMarkdownDataAccessor = new Mock <IDataAccessor <Markdown> >();

            mockMarkdownDataAccessor.Setup(x => x.GetAll()).Returns(markdownList);

            MarkdownController markdownController = new MarkdownController(mockMarkdownDataAccessor.Object);
            var result        = markdownController.GetAllMarkdowns();
            var contentResult = result as ActionResult <IEnumerable <Markdown> >;

            Assert.NotNull(contentResult.Value);
        }
Example #4
0
        public void AddingValidMarkdownReturnsSuccess()
        {
            Mock <IDataAccessor <Markdown> > mockMarkdownDataAccessor = new Mock <IDataAccessor <Markdown> >();

            mockMarkdownDataAccessor.Setup(x => x.Save(validMarkdown)).Returns("Success.");

            MarkdownController markdownController = new MarkdownController(mockMarkdownDataAccessor.Object);

            var result        = markdownController.AddMarkdown(validMarkdown);
            var contentResult = result as ActionResult <string>;

            Assert.AreEqual(contentResult.Value, "Success.");
        }
Example #5
0
        public void UpdateNonExistentMarkdownReturnsError()
        {
            Mock <IDataAccessor <Markdown> > mockMarkdownDataAccessor = new Mock <IDataAccessor <Markdown> >();

            mockMarkdownDataAccessor.Setup(x => x.Update(nonExistentMarkdownWithExistingPrice))
            .Returns("Markdown does not exist, create markdown before updating price.");

            MarkdownController markdownController = new MarkdownController(mockMarkdownDataAccessor.Object);

            var result        = markdownController.UpdateMarkdown(nonExistentMarkdownWithExistingPrice);
            var contentResult = result as ActionResult <string>;

            Assert.AreEqual(contentResult.Value, "Markdown does not exist, create markdown before updating price.");
        }
Example #6
0
        public void UpdateMarkdownForNonExistentPriceReturnsError()
        {
            Mock <IDataAccessor <Markdown> > mockMarkdownDataAccessor = new Mock <IDataAccessor <Markdown> >();

            mockMarkdownDataAccessor.Setup(x => x.Update(nonExistentMarkdownWithoutExistingPrice))
            .Returns("Error: Cannot update markdown for a product that doesn't have a price.");

            MarkdownController markdownController = new MarkdownController(mockMarkdownDataAccessor.Object);

            var result        = markdownController.UpdateMarkdown(nonExistentMarkdownWithoutExistingPrice);
            var contentResult = result as ActionResult <string>;

            Assert.AreEqual(contentResult.Value, "Error: Cannot update markdown for a product that doesn't have a price.");
        }
Example #7
0
        public void UpdateInvalidExistingMarkdownReturnsError()
        {
            Mock <IDataAccessor <Markdown> > mockMarkdownDataAccessor = new Mock <IDataAccessor <Markdown> >();

            mockMarkdownDataAccessor.Setup(x => x.Update(invalidMarkdown))
            .Returns("Error: Markdown must be smaller than price.");

            MarkdownController markdownController = new MarkdownController(mockMarkdownDataAccessor.Object);

            var result        = markdownController.UpdateMarkdown(invalidMarkdown);
            var contentResult = result as ActionResult <string>;

            Assert.AreEqual(contentResult.Value, "Error: Markdown must be smaller than price.");
        }
Example #8
0
        public void AddingMarkdownForNonExistentReturnsErrorMessage()
        {
            Mock <IDataAccessor <Markdown> > mockMarkdownDataAccessor = new Mock <IDataAccessor <Markdown> >();

            mockMarkdownDataAccessor.Setup(x => x.Save(markdownForNonExistentPrice))
            .Returns("Error: Cannot add markdown for a product that doesn't have a price.");

            MarkdownController markdownController = new MarkdownController(mockMarkdownDataAccessor.Object);

            var result        = markdownController.AddMarkdown(markdownForNonExistentPrice);
            var contentResult = result as ActionResult <string>;

            Assert.AreEqual(contentResult.Value, "Error: Cannot add markdown for a product that doesn't have a price.");
        }
Example #9
0
        public void GetNonExistentMarkdownReturnsZero()
        {
            Mock <IDataAccessor <Markdown> > mockMarkdownDataAccessor = new Mock <IDataAccessor <Markdown> >();

            mockMarkdownDataAccessor.Setup(x => x.GetAmountByProductName(nonExistentMarkdownWithExistingPrice.ProductName))
            .Returns(0);

            MarkdownController markdownController = new MarkdownController(mockMarkdownDataAccessor.Object);

            string productName = "Bananas";

            var result        = markdownController.GetMarkdown(productName);
            var contentResult = result as ActionResult <float>;

            Assert.AreEqual(contentResult.Value, 0);
        }
Example #10
0
        public void GetExistentMarkdownReturnsMarkdown()
        {
            Mock <IDataAccessor <Markdown> > mockMarkdownDataAccessor = new Mock <IDataAccessor <Markdown> >();

            mockMarkdownDataAccessor.Setup(x => x.GetAmountByProductName(validMarkdown.ProductName))
            .Returns(validMarkdown.Amount);

            MarkdownController markdownController = new MarkdownController(mockMarkdownDataAccessor.Object);

            string productName = "Can of soup";

            var result        = markdownController.GetMarkdown(productName);
            var contentResult = result as ActionResult <float>;

            Assert.AreEqual(contentResult.Value, 0.45f);
        }
Example #11
0
        public void ConvertHtmlToMarkdownTest()
        {
            string html = @"<section>
                    <h4 class=""mt-5"" id=""action_changelog"">最近更新</h4>

                    <table class=""table table-bordered table-sm"">
                        <tbody><tr>
                            <th style=""width: 80px"">
                                更新时间
                            </th>
                            <th style=""width: 80px"">
                                修订版本
                            </th>
                            <th>
                                更新说明
                            </th>
                        </tr>
                            <tr>
                                <td class=""font14"">
                                    <span title=""20220309 12:39:18"">
                                        7天5小时前
                                    </span>
                                </td>
                                <td class=""font14"">
                                    22
                                </td>

                                <td class=""font12"">
                                    + 动态自动调整检测间隔,闲时检测次数更少
<br>+ 外部调用重开积累的历史数据,命令参数:getRecentList
                                </td>
                            </tr>
                            <tr>
                                <td class=""font14"">
                                    <span title=""20220302 19:10:33"">
                                        13天23小时前
                                    </span>
                                </td>
                                <td class=""font14"">
                                    21
                                </td>

                                <td class=""font12"">
                                    ~ 检测间隔默认值改为400ms
<br>+ 爆内存通知,请有过Quicker内存占用过高并使用「重开」的用户务必更新查看
                                </td>
                            </tr>
                            <tr>
                                <td class=""font14"">
                                    <span title=""20220223 17:38:59"">
                                        21天0小时前
                                    </span>
                                </td>
                                <td class=""font14"">
                                    20
                                </td>

                                <td class=""font12"">
                                    + 在设置中增加「检测间隔」参数以调整资源占用量
                                </td>
                            </tr>
                    </tbody></table>
                    <a class=""mt-2 mb-2"" title=""查看更多更新历史"" href=""/Share/Actions/Versions?code=e88dba21-983c-4ff4-9cbd-08d945c23a95"">
                        <i class=""fal fa-history text-primary ml-2 mr-0""></i> 更多...
                    </a>
                </section>";

            var md = MarkdownController.ConvertHtmlToMarkdown(html);
        }