private void MenuItem_NewSpeaker(object sender, RoutedEventArgs e) { Speaker sp; if (_speakerProvider.IsOnline) { sp = new ApiSynchronizedSpeaker("-----", "-----", Speaker.Sexes.X) { IsSaved = false, DataBaseType = DBType.Api, } } ; else { sp = new Speaker("-----", "-----", Speaker.Sexes.X, null) { DataBaseType = DBType.User } };; NewSpeaker = sp; SpeakerProvider.AddTempSpeaker(sp); var ss = SpeakerProvider.GetContainerForSpeaker(sp); SpeakersBox.SelectedValue = ss; ss.New = true; ss.Changed = true; SpeakersBox.ScrollIntoView(SpeakersBox.SelectedItem); }
public void SpeakerProvider_FromHtmlNode_Invalid_HtmlNode() { var speaker = SpeakerProvider.FromHtmlNode(null); Assert.IsNull( speaker, "Expected null object"); }
private async Task <bool> TrySaveSpeaker(SpeakerContainer spk) { if (NewSpeaker == spk.Speaker) { if (await TestName(spk)) { bool reselect = spk == SpeakersBox.SelectedItem; using (SpeakerProvider.DeferRefresh()) { spk.ApplyChanges(); SpeakerProvider.DeleteSpeaker(spk.Speaker); if (spk.IsOnline) { SpeakerProvider.AddOnlineSpeaker((ApiSynchronizedSpeaker)spk.Speaker); } else { SpeakerProvider.AddLocalSpeaker(spk.Speaker); } NewSpeaker = null; } if (reselect) { var ss = SpeakerProvider.GetContainerForSpeaker(spk.Speaker); SpeakersBox.SelectedValue = ss; } } else { return(false); //do not apply or save - name is invalid } } spk.ApplyChanges(); if (spk.IsOnline) { using (var wc = new WaitCursor()) { ApiSynchronizedSpeaker ss = spk.Speaker as ApiSynchronizedSpeaker; if (ss == null) { return(false); } if (ss.IsSaved) { return(await _transcription.Api.UpdateSpeaker(ss)); } else { return(await _transcription.Api.AddSpeaker(ss)); } } } return(true);; }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); RegisterGlobalFilters(GlobalFilters.Filters); RegisterRoutes(RouteTable.Routes); var speakersFolder = new DirectoryInfo(Server.MapPath("~/App/Speakers/Data/")); Speakers = new SpeakerProvider(speakersFolder); }
public void SpeakerProvider_FromHtmlNodes() { var htmlNodes = scraper.Speakers; var speakers = SpeakerProvider.FromHtmlNodes(htmlNodes); Assert.IsTrue( speakers?.Any() ?? false, "Expected speakers to be returned"); }
public void SpeakerProvider_FromHtmlNode_KeyNote() { var speakerNode = scraper.KeyNote; var speaker = SpeakerProvider.FromHtmlNode(speakerNode); Assert.IsTrue( speaker.Track.Equals("keynote"), "Expected speaker to be keynote"); }
public void SpeakerProvider_FromHtmlNode() { var speakerNode = scraper.KeyNote; var speaker = SpeakerProvider.FromHtmlNode(speakerNode); Assert.IsNotNull( speaker, "Expected speaker object to be returned"); }
public async Task Test1() { // prepare var settings = new Settings { AuditRepoDirectory = "/Users/alex-mbp/repos/Audit" }; ISpeakerProvider speakerProvider = new SpeakerProvider(null, settings); // test var speakers = await speakerProvider.GetAllSpeakersAsync(); Assert.NotNull(speakers); Assert.NotEmpty(speakers); var speaker = speakers.First(); var lastUpdateDate = speaker.GetLastUpdateDate(settings); var date = DateTime.Parse(lastUpdateDate); Assert.False(DateTime.MinValue == date); }
private async Task <bool> TestName(SpeakerContainer spk) { if (string.IsNullOrWhiteSpace(spk.FullName.Replace("-", ""))) { MessageBox.Show(string.Format(Properties.Strings.SpeakersManagerSpeakerNameConflictForbiddenQuestionFormat, spk.FullName), Properties.Strings.SpeakersManagerSpeakerNameConflictCaption, MessageBoxButton.OK, MessageBoxImage.Exclamation); return(false); } else { var similar = await SpeakerProvider.FindSimilar(spk); if (similar.Length > 0) { if (MessageBox.Show(string.Format(Properties.Strings.SpeakersManagerSpeakerNameConflictQuestionFormat, string.Join(",", similar.Take((similar.Length > 3) ? 3 : similar.Length).Select(s => s.FullName))), Properties.Strings.SpeakersManagerSpeakerNameConflictCaption, MessageBoxButton.YesNo, MessageBoxImage.Exclamation) == MessageBoxResult.No) { return(false); } } } return(true); }
private MessageBoxResult CheckChanges(SpeakerContainer sc) { if (!sc.Changed) { return(MessageBoxResult.OK); } var result = MessageBox.Show(string.Format(Properties.Strings.SpeakersManagerSpeakerApplyChangesDialogFormat, sc.FullName), Properties.Strings.SpeakersManagerSpeakerApplyChangesDialogQuestion, MessageBoxButton.YesNoCancel, MessageBoxImage.Question); var ss = sc.Speaker; if (result == MessageBoxResult.Yes) { bool saved = AsyncHelpers.RunSync(() => TrySaveSpeaker(sc)); if (!saved) { result = MessageBoxResult.No; } else { return(MessageBoxResult.Yes); } } if (result == MessageBoxResult.No) { if (NewSpeaker == sc.Speaker) { NewSpeaker = null; SpeakerProvider.DeleteSpeaker(ss); } sc.ReloadSpeaker(); return(MessageBoxResult.No); } return(MessageBoxResult.Cancel); }
public void Given_source_data() { var directory = GetDataDirectory(); _provider = new SpeakerProvider(directory); }
public void SpeakerProvider_FromHtmlNodes_Invalid_HtmlNodes() { _ = SpeakerProvider.FromHtmlNodes(null); }