public void NotEquals() { AuthorAlarm alarm = new AuthorAlarm("1", "1", SentimentType.POSITIVE, TimeMeasure.DAYS); AuthorAlarm otherAlarm = new AuthorAlarm("1", "1", SentimentType.NEGATIVE, TimeMeasure.DAYS); Assert.IsFalse(alarm.Equals(otherAlarm)); }
public void AnalyzeUpdateCountDuplicateAuthors() { AuthorAlarm alarm = new AuthorAlarm("2", "2", SentimentType.POSITIVE, TimeMeasure.HOURS); Phrase firstPhrase = new Phrase("I like google", DateTime.Now.AddHours(-1), AUTHOR); Phrase secondPhrase = new Phrase("I like starbucks", DateTime.Now.AddHours(-1), AUTHOR); try { firstPhrase.AnalyzePhrase(new List <Entity>(), new List <Sentiment> { new Sentiment(SentimentType.POSITIVE, "I like") }); } catch (AnalysisException) { } try { secondPhrase.AnalyzePhrase(new List <Entity>(), new List <Sentiment> { new Sentiment(SentimentType.POSITIVE, "I like") }); } catch (AnalysisException) { } alarm.AnalyzePhrases(new List <Phrase> { firstPhrase, secondPhrase }); Assert.AreEqual(alarm.PostCount, 2); }
private void UpdateStateOfAuthorAlarm(AuthorAlarm alarm) { try { using (Context ctx = new Context()) { AuthorAlarm alarmOfDB = ctx.AuthorAlarms.SingleOrDefault(a => a.Id == alarm.Id); Author authorOfDB; alarmOfDB.ParticipantsAuthors.Clear(); foreach (Author currentAuthor in alarm.ParticipantsAuthors) { authorOfDB = ctx.Authors.SingleOrDefault(author => author.Id == currentAuthor.Id && !currentAuthor.IsDeleted); alarmOfDB.ParticipantsAuthors.Add(authorOfDB); } alarmOfDB.IsActive = alarm.IsActive; ctx.SaveChanges(); } } catch (Exception ex) { throw new DataBaseException("Error actualizando alarma.", ex); } }
public void VerifyAlarmsOfAuthors2() { management.AuthorManagement.AddAuthor(author); Entity entity = new Entity() { EntityName = "Coca Cola" }; Entity entity2 = new Entity() { EntityName = "Pepsi" }; management.EntityManagement.AddEntity(entity); management.EntityManagement.AddEntity(entity2); Sentiment sentiment = new Sentiment() { SentimientText = "Me gusta", SentimentType = Sentiment.TypeSentiment.Positive }; management.SentimentManagement.AddSentiment(sentiment); AuthorAlarm aAlarm = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Positive, QuantityPost = 1, QuantityTime = 1, IsInHours = false }; management.AlarmManagement.AddAlarm(aAlarm); Phrase phrase = new Phrase() { TextPhrase = "Me gusta Coca Cola", PhraseDate = new DateTime(2020, 04, 28), Entity = entity, PhraseType = Phrase.TypePhrase.Positive, PhraseAuthor = author }; Phrase phrase2 = new Phrase() { TextPhrase = "Me gusta Pepsi", PhraseDate = new DateTime(2020, 04, 25), Entity = entity2, PhraseType = Phrase.TypePhrase.Positive, PhraseAuthor = author }; management.PhraseManagement.AddPhrase(phrase); management.PhraseManagement.AddPhrase(phrase2); MockedTimeProvider provider = new MockedTimeProvider() { MockedDateTime = new DateTime(2020, 04, 30, 19, 10, 30) }; management.UpdateAlarms(provider); Assert.IsFalse(aAlarm.IsActive); CollectionAssert.DoesNotContain(aAlarm.ParticipantsAuthors, author); }
public void UpdateValidSentimentType() { AuthorAlarm alarm = new AuthorAlarm("1", "1", SentimentType.NEGATIVE, TimeMeasure.DAYS); alarm.Type = SentimentType.POSITIVE; Assert.AreEqual(alarm.Type, SentimentType.POSITIVE); }
public void UpdateValidNumberDays() { AuthorAlarm alarm = new AuthorAlarm("2", "1", SentimentType.NEGATIVE, TimeMeasure.DAYS); alarm.Time = "5"; Assert.AreEqual(alarm.Time, "5"); }
public void GetToString() { AuthorAlarm alarm = new AuthorAlarm("1", "1", SentimentType.POSITIVE, TimeMeasure.DAYS); string str = "Alarm POSITIVE, measured in DAYS, with PostQuantity: 1."; Assert.AreEqual(alarm.ToString(), str); }
public void SetUp() { AUTHOR = new Author("sada", "sadasd", "sdaasd", new DateTime(1995, 2, 3)); ALARM = new AuthorAlarm("1", "1", SentimentType.POSITIVE, TimeMeasure.DAYS); REPOSITORY = new AuthorAlarmRepository(); CleanRepositories(); }
public void ShowActiveAlarm() { management.AuthorManagement.AddAuthor(author); management.AuthorManagement.AddAuthor(author2); AuthorAlarm aAlarm = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Positive, QuantityPost = 1, QuantityTime = 1, IsInHours = false }; management.AlarmManagement.AddAlarm(aAlarm); Entity entity = new Entity() { EntityName = "Coca Cola" }; management.EntityManagement.AddEntity(entity); Sentiment sentiment = new Sentiment() { SentimientText = "Me gusta", SentimentType = Sentiment.TypeSentiment.Positive }; management.SentimentManagement.AddSentiment(sentiment); Phrase phrase = new Phrase() { TextPhrase = "Me gusta Coca Cola", PhraseDate = new DateTime(2020, 04, 30), Entity = entity, PhraseType = Phrase.TypePhrase.Positive, PhraseAuthor = author }; Phrase phrase2 = new Phrase() { TextPhrase = "Me gusta Coca Cola", PhraseDate = new DateTime(2020, 04, 30), Entity = entity, PhraseType = Phrase.TypePhrase.Positive, PhraseAuthor = author2 }; management.PhraseManagement.AddPhrase(phrase); management.PhraseManagement.AddPhrase(phrase2); MockedTimeProvider provider = new MockedTimeProvider() { MockedDateTime = new DateTime(2020, 04, 30, 19, 10, 30) }; management.UpdateAlarms(provider); string resultExpected = "Alarma de tipo: " + "positiva" + " con estado: " + "activa" + " con los autores: " + " " + "Josami" + " " + "agustinh "; Assert.AreEqual(resultExpected, management.AlarmManagement.GetAuthorAlarm(aAlarm).Show()); }
public void CreateInvalidAuthorAlarmQuantityTimeNegative() { AuthorAlarm alarm = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Positive, QuantityPost = 90, QuantityTime = -15, IsInHours = false }; management.AddAlarm(alarm); }
public void CreateInvalidQuantityPostAuthorAlarm() { AuthorAlarm alarm = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Positive, QuantityPost = 100000, QuantityTime = 10, IsInHours = false }; management.AddAlarm(alarm); }
public void CreateInvalidAuthorAlarm() { AuthorAlarm alarm = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Positive, QuantityPost = -50, QuantityTime = 13, IsInHours = true }; management.AddAlarm(alarm); }
private void LoadAuthorAlarmData(AuthorAlarm alarm) { CleanMessage(); HideFields(false); txtPostQuantity.Text = alarm.PostQuantity; txtCantDays.Text = alarm.Time; cboSentimentType.SelectedItem = alarm.Type; cboTimeMeasure.SelectedItem = alarm.TimeMeasure; txtPostCount.Text = alarm.PostCount.ToString(); chkActivity.Checked = alarm.IsEnabled(); }
public void CreateValidAuthorAlarm() { AuthorAlarm alarm = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Positive, QuantityPost = 50, QuantityTime = 5, IsInHours = false }; management.AddAlarm(alarm); CollectionAssert.Contains(management.AllAlarms, alarm); }
private void AddAlarmUI() { AuthorAlarm alarmToAdd = new AuthorAlarm() { QuantityPost = int.Parse(textBoxQuantityPost.Text), QuantityTime = int.Parse(textBoxQuantityTime.Text), TypeOfAlarm = TypeOfAlarmChecked(), IsInHours = IsInHoursTimeFrame() }; generalManagement.AlarmManagement.AddAlarm(alarmToAdd); InitializeAlarms(); }
public void ShowInactiveAlarm() { AuthorAlarm aAlarm = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Positive, QuantityPost = 2, QuantityTime = 1, IsInHours = false }; string resultExpected = "Alarma de tipo: " + "positiva" + " con estado: " + "inactiva"; Assert.AreEqual(resultExpected, aAlarm.Show()); }
public AuthorAlarm GetAuthorAlarmById(AuthorAlarm alarm) { try { using (Context ctx = new Context()) { return(ctx.AuthorAlarms.Include("ParticipantsAuthors").SingleOrDefault(a => a.Id == alarm.Id)); } } catch (Exception ex) { throw new DataBaseException("Error obteniendo alarma.", ex); } }
public void VerifyAlarmsOfAuthors() { management.AuthorManagement.AddAuthor(author); Entity entity = new Entity() { EntityName = "Coca Cola" }; management.EntityManagement.AddEntity(entity); Sentiment sentiment = new Sentiment() { SentimientText = "Me gusta", SentimentType = Sentiment.TypeSentiment.Positive }; management.SentimentManagement.AddSentiment(sentiment); AuthorAlarm aAlarm = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Positive, QuantityPost = 1, QuantityTime = 1, IsInHours = true }; management.AlarmManagement.AddAlarm(aAlarm); Phrase phrase = new Phrase() { TextPhrase = "Me gusta Coca Cola", PhraseDate = DateTime.Now, Entity = entity, PhraseType = Phrase.TypePhrase.Positive, PhraseAuthor = author }; management.PhraseManagement.AddPhrase(phrase); MockedTimeProvider provider = new MockedTimeProvider() { MockedDateTime = new DateTime(2019, 10, 1, 19, 10, 30) }; management.UpdateAlarms(provider); AuthorAlarm dbAlarm = management.AlarmManagement.GetAuthorAlarm(aAlarm); Assert.IsTrue(dbAlarm.IsActive); CollectionAssert.Contains(dbAlarm.ParticipantsAuthors, author); }
private void CleanFields() { HideFields(true); SelectedEntityAlarm = null; SelectedAuthorAlarm = null; txtPostQuantity.Text = string.Empty; txtCantDays.Text = string.Empty; cboSentimentType.SelectedIndex = -1; cboTimeMeasure.SelectedIndex = -1; cboEntity.SelectedIndex = -1; txtPostCount.Text = string.Empty; chkActivity.Checked = false; lstAlarms.ClearSelected(); }
private void lstAlarms_SelectedIndexChanged(object sender, EventArgs e) { if (lstAlarms.SelectedItem is null) { return; } if (rbtnEntity.Checked) { SelectedEntityAlarm = lstAlarms.SelectedItem as EntityAlarm; LoadEntityAlarmData(SelectedEntityAlarm); } else { SelectedAuthorAlarm = lstAlarms.SelectedItem as AuthorAlarm; LoadAuthorAlarmData(SelectedAuthorAlarm); } }
public void GetAllAlarms() { List <AuthorAlarm> alarms = new List <AuthorAlarm>(); AuthorAlarm newAlarm = new AuthorAlarm("3", "1", SentimentType.NEGATIVE, TimeMeasure.HOURS); alarms.Add(ALARM); alarms.Add(newAlarm); REPOSITORY.Add(ALARM); REPOSITORY.Add(newAlarm); using (SentimentAnalysisContext context = new SentimentAnalysisContext()) { var repositoryAlarms = Helper.Instance.GetAuthorAlarms(context.AuthorAlarms); Assert.IsTrue(repositoryAlarms.SequenceEqual(alarms)); } }
public void AnalyzeNoUpdatePostCount() { AuthorAlarm alarm = new AuthorAlarm("2", "1", SentimentType.NEGATIVE, TimeMeasure.DAYS); Phrase phrase = new Phrase("I like google", YESTERDAY.AddDays(-25), AUTHOR); try { phrase.AnalyzePhrase(new List <Entity>(), new List <Sentiment> { new Sentiment(SentimentType.POSITIVE, "I like") }); } catch (AnalysisException) { } alarm.AnalyzePhrases(new List <Phrase> { phrase }); Assert.AreEqual(alarm.PostCount, 0); }
public void IsNotEnabled() { AuthorAlarm alarm = new AuthorAlarm("2", "1", SentimentType.POSITIVE, TimeMeasure.HOURS); Phrase phrase = new Phrase("I like google", YESTERDAY, AUTHOR); try { phrase.AnalyzePhrase(new List <Entity>(), new List <Sentiment> { new Sentiment(SentimentType.POSITIVE, "I like") }); } catch (AnalysisException) { } alarm.AnalyzePhrases(new List <Phrase> { phrase }); Assert.IsFalse(alarm.IsEnabled()); }
public void AddTwoAuthorsAlarms() { AuthorAlarm alarm = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Positive, QuantityPost = 40, QuantityTime = 10, IsInHours = false }; AuthorAlarm alarm2 = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Negative, QuantityPost = 30, QuantityTime = 20, IsInHours = true }; management.AddAlarm(alarm); management.AddAlarm(alarm2); Assert.IsTrue(management.AllAlarms.Length == 2); }
public void VerifyAlarmsAuthorsAlarms() { management.AuthorManagement.AddAuthor(author); AuthorAlarm aAlarm = new AuthorAlarm() { TypeOfAlarm = AuthorAlarm.TypeOfNewAlarm.Positive, QuantityPost = 1, QuantityTime = 1, IsInHours = false }; management.AlarmManagement.AddAlarm(aAlarm); MockedTimeProvider provider = new MockedTimeProvider() { MockedDateTime = new DateTime(2020, 04, 30, 19, 10, 30) }; management.UpdateAlarms(provider); Assert.IsFalse(aAlarm.IsActive); CollectionAssert.DoesNotContain(aAlarm.ParticipantsAuthors, author); }
public void UpdateInvalidPostQuantity() { AuthorAlarm alarm = new AuthorAlarm("2", "1", SentimentType.NEGATIVE, TimeMeasure.DAYS); alarm.PostQuantity = "-1"; }
public void ConstructorNeutralSentimentType() { AuthorAlarm alarm = new AuthorAlarm("2", "-1", SentimentType.NEUTRAL, TimeMeasure.DAYS); }
public void SetId() { AuthorAlarm alarm = new AuthorAlarm("1", "1", SentimentType.NEGATIVE, TimeMeasure.DAYS); Assert.IsNotNull(alarm.Id); }
public void ConstructorWithId() { AuthorAlarm alarm = new AuthorAlarm(3, 2, 3, DateTime.Now, 3, SentimentType.POSITIVE, TimeMeasure.DAYS); Assert.AreEqual(alarm.Id, 3); }
private void btnSave_Click(object sender, System.EventArgs e) { try { string message; if (rbtnEntity.Checked) { #region Entity Alarm EntityAlarm alarm = new EntityAlarm( txtPostQuantity.Text, txtCantDays.Text, (SentimentType)cboSentimentType.SelectedItem, (Entity)cboEntity.SelectedItem); if (SelectedEntityAlarm == null) { entityAlarmRepository.Add(alarm); message = SAVE_ALARM; } else { alarm.Id = SelectedEntityAlarm.Id; alarm.CreationDate = SelectedEntityAlarm.CreationDate; entityAlarmRepository.Modify(SelectedEntityAlarm.Id, alarm); message = MODIFY_ALARM; } #endregion } else { #region Author Alarm AuthorAlarm alarm = new AuthorAlarm( txtPostQuantity.Text, txtCantDays.Text, (SentimentType)cboSentimentType.SelectedItem, (TimeMeasure)cboTimeMeasure.SelectedItem); if (SelectedAuthorAlarm == null) { authorAlarmRepository.Add(alarm); message = SAVE_ALARM; } else { alarm.Id = SelectedAuthorAlarm.Id; alarm.CreationDate = SelectedAuthorAlarm.CreationDate; authorAlarmRepository.Modify(SelectedAuthorAlarm.Id, alarm); message = MODIFY_ALARM; } #endregion } LoadAlarms(); ShowSuccess(message); CleanFields(); } catch (AlarmException ex) { ShowError(ex.Message); } }