Exemple #1
0
        public void BasicSiteValidatorTest()
        {
            var requestList = new List <HttpRequestData>()
            {
                new HttpRequestData
                {
                    Url = "http://www.microsoft.com/en-us/default.aspx"
                },
                new HttpRequestData
                {
                    Url = "http://localhost/WebLog"
                },
                new HttpRequestData
                {
                    Url = "http://localhost/WebLog/posts"
                }
            };
            var stress = new StressTester();

            var  validator = new SiteValidator(stress);
            bool result    = validator.CheckAllServers(requestList);

            Assert.IsFalse(result);
            Console.WriteLine(validator.ErrorMessage);
        }
Exemple #2
0
        private MultiPage <Page> GetMainPage()
        {
            ISiteValidator      siteValidator  = new SiteValidator();
            ISiteValidatorAsync asyncValidator = new SiteValidatorAsync(siteValidator);

            var tabbedPage = new TabbedPage()
            {
                BarBackgroundColor = Color.FromHex("#2196F3"),
                BarTextColor       = Color.White
            };

            tabbedPage.Children.Add(new CodeBehindSyncPage(siteValidator));
            tabbedPage.Children.Add(new CodeBehindAsyncPage(asyncValidator));
            //tabbedPage.Children.Add(new CodeBehindBlockThreadPage(asyncValidator));

            PlatformHelper.SetPlatformStyling(tabbedPage);
            tabbedPage.SelectedTabColor   = Color.White;
            tabbedPage.UnselectedTabColor = Color.FromHex("#0063C0");

            return(tabbedPage);
        }
Exemple #3
0
        public void Basic3SiteValidatorTest()
        {
            var requestList = new List <HttpRequestData>()
            {
                // should work because it's local loopback
                new HttpRequestData
                {
                    Url = "http://rasxps/WebLog"
                },
                new HttpRequestData
                {
                    Url = "http://rasxps/WebLog/posts"
                }
            };
            var stress = new StressTester();

            var  validator = new SiteValidator(stress);
            bool result    = validator.CheckAllServers(requestList);

            Console.WriteLine(validator.ErrorMessage);
            Assert.IsTrue(result);
        }
Exemple #4
0
        public SiteModule(ISiteService _siteService)
            : base("/site")
        {
            SiteValidator sitevalidator = new SiteValidator();
            Get["/list"] = x =>
            {
                return View["Site/List",_siteService.GetAllSite()];
            };

            Get["/add"] = x =>
            {
                return View["Site/Add",new Site()];
            };

            Post["/add"] = x =>
            {
                var site = this.Bind<Site>();
                ViewBag.Errored = true;
                ValidationResult results = sitevalidator.Validate(site);
                if (!results.IsValid)
                {
                    ViewBag.ErrorMsg = HtmlUtils.GetCharisma_Alert(Charisma_AlertType.error, "错误信息", results.Errors);
                }
                else if (_siteService.CreateSite(site))
                {
                    ViewBag.ErrorMsg = HtmlUtils.GetCharisma_Alert(Charisma_AlertType.success, "成功信息","添加网站成功");
                }
                else
                {
                    ViewBag.ErrorMsg = HtmlUtils.GetCharisma_Alert(Charisma_AlertType.error, "错误信息", "未知错误,请联系管理员");
                }
                return View["Site/Add",site];
            };

            Get["/edit/{id}"] = x =>
            {
                var model = _siteService.GetSite((int)x.id);
                return View["Site/Edit", model];
            };

            Post["/edit/{id}"] = x =>
            {
                var site = this.Bind<Site>();
                ViewBag.Errored = true;
                ValidationResult results = sitevalidator.Validate(site);
                if (!results.IsValid)
                {
                    ViewBag.ErrorMsg = HtmlUtils.GetCharisma_Alert(Charisma_AlertType.error, "错误信息", results.Errors);
                }
                else if (_siteService.ModifySite(site))
                {
                    ViewBag.ErrorMsg = HtmlUtils.GetCharisma_Alert(Charisma_AlertType.success, "成功信息", "修改网站成功");
                }
                else
                {
                    ViewBag.ErrorMsg = HtmlUtils.GetCharisma_Alert(Charisma_AlertType.error, "错误信息", "未知错误,请联系管理员");
                }
                return View["Site/Edit", site];
            };

            Get["/delete/{id}"] = x =>
            {
                _siteService.DeleteSite((int)x.id);
                return Response.AsRedirect("/site/list");
            };

            Get["/editdomain/{id}"] = x =>
            {
                var model = _siteService.GetSite((int)x.id);
                return View["Site/EditDomain", model];
            };

            Post["/adddomain"] = x =>
            {
                var domainName = Request.Form.domain.ToString();
                var id = new Guid(Request.Form.id.ToString());
                var result = new NotyResult();

                if (String.IsNullOrEmpty(domainName))
                {
                    result.code = NotyType.warning.ToString();
                    result.msg = "域名不能为空!";
                }
                else if (!_siteService.IsDomainOnly(id,domainName))
                {
                    result.code = NotyType.warning.ToString();
                    result.msg = "域名已存在!";
                }
                else if (_siteService.AddDomain(id,domainName))
                {
                    result.code = NotyType.success.ToString();
                    result.msg = "添加成功";
                }
                else
                {
                    result.code = NotyType.error.ToString();
                    result.msg = "添加失败!请联系管理员!";
                }
                return this.Response.AsJson<NotyResult>(result);
            };
        }