public void TestLinkCheckerConfigSection() { Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); BrowserCollection browsers = AssertNotNull(config); BrowserConfigElement last = null; int ctr = 0; foreach (BrowserConfigElement browser in browsers) { Assert.IsNotNull(browser.Accept); Assert.IsNotNull(browser.AcceptCharset); Assert.IsNotNull(browser.AcceptLanguage); Assert.IsNotNull(browser.AllowAutoRedirect); Assert.IsNotNull(browser.UserAgent); Assert.IsNotNull(browser.MaximumAutomaticRedirections); if (ctr != 0) { Assert.AreNotEqual(last.Name, browser.Name); Assert.AreEqual(last.Accept, browser.Accept); Assert.AreEqual(last.AcceptCharset, browser.AcceptCharset); Assert.AreEqual(last.AcceptLanguage, browser.AcceptLanguage); Assert.AreEqual(last.AllowAutoRedirect, browser.AllowAutoRedirect); Assert.AreEqual(last.MaximumAutomaticRedirections, browser.MaximumAutomaticRedirections); Assert.AreEqual(last.UserAgent, browser.UserAgent); } ctr++; last = browser; } Assert.AreEqual(2, ctr); }
private void TestValidationAssumption(Configuration config) { LinkCheckerConfigSection section = (LinkCheckerConfigSection)config.GetSection("linkCheckerConfig"); Assert.IsNotNull(section); BrowserCollection collection = section.Browsers; Assert.IsNotNull(collection); }
public BrowserCollection AssertNotNull(Configuration config) { ConfigurationSectionCollection sections = config.Sections; Assert.IsNotNull(sections); ConfigurationSection section = sections.Get("linkCheckerConfig"); Assert.IsNotNull(section); LinkCheckerConfigSection linkSection = (LinkCheckerConfigSection)section; Assert.IsNotNull(linkSection); Assert.IsNotNull(linkSection.RecursionLimit); Assert.IsNotNull(linkSection.MaxCrawlTime); Assert.IsNotNull(linkSection.RequestTimeout); BrowserCollection browsers = linkSection.Browsers; Assert.IsNotNull(browsers); return(browsers); }
private async void ContentRendered() { //なんか気持ち悪い書き方だけど一応動く。 //ここでawaitするとそれ以降が実行されないからこうするしかない。 try { MessengerInstance.Send(new SetAddingCommentDirection { IsTop = _options.IsAddingNewCommentTop }); _isAddingNewCommentTop = _options.IsAddingNewCommentTop; var siteOptionsPath = GetSiteOptionsPath(_siteContext); _siteContext.LoadOptions(siteOptionsPath, _io); _commentProvider = _siteContext.CreateCommentProvider(); _commentProvider.Connected += CommentProvider_Connected; _commentProvider.MessageReceived += CommentProvider_MessageReceived; _commentProvider.MetadataUpdated += CommentProvider_MetadataUpdated; _commentProvider.CanConnectChanged += (s, e) => { RaisePropertyChanged(nameof(CanConnect)); RaisePropertyChanged(nameof(CanDisconnect)); }; _commentProvider.CanDisconnectChanged += (s, e) => { RaisePropertyChanged(nameof(CanConnect)); RaisePropertyChanged(nameof(CanDisconnect)); }; MessengerInstance.Send(new SetPostCommentPanel(_siteContext.GetCommentPostPanel(_commentProvider))); var browsers = _browserLoader.LoadBrowsers().Select(b => new BrowserViewModel(b)); //もしブラウザが無かったらclass EmptyBrowserProfileを使う。 if (browsers.Count() == 0) { browsers = new List <BrowserViewModel> { new BrowserViewModel(new EmptyBrowserProfile()), }; } foreach (var browser in browsers) { BrowserCollection.Add(browser); } SelectedBrowserViewModel = BrowserCollection[0]; _pluginManager = new PluginManager(_options); _pluginManager.PluginAdded += PluginManager_PluginAdded; _pluginManager.LoadPlugins(new PluginHost(this, _options, _io)); _pluginManager.OnLoaded(); Input = _options.Input; if (_options.IsAutoCheckIfUpdateExists) { await CheckIfUpdateExists(true); } } catch (Exception ex) { _logger.LogException(ex); Debug.WriteLine(ex.Message); } }