public bool Equals(NotificationMessage other) { if (ReferenceEquals(null, other)) return false; if (ReferenceEquals(this, other)) return true; return _template.Equals(other._template) && Accessors.IsEqualTo(other.Accessors); }
public void get_message_with_substitutions() { var message = new NotificationMessage(NotificationMessageKeys.SUBSTITUTE_NAME_AND_AGE) .AddSubstitution("Name", "Max") .AddSubstitution("Age", "7"); message.GetMessage().ShouldBe("Max is 7 years old"); }
public void equality_check_negative() { var token = StringToken.FromKeyString("Test", "1...2...3"); var v1 = TemplateValue.For("FirstName", "Joel"); var v2 = TemplateValue.For("LastName", "Arnold"); var message1 = new NotificationMessage(token, v1, v2); var message2 = new NotificationMessage(token, v1); message1.ShouldNotBe(message2); }
public void Validate(Accessor accessor, ValidationContext context) { var username = context.GetFieldValue<string>(accessor); var userService = context.Service<IUserService>(); if (userService.ExistsByUsername(username)) { var token = new ValidationKeys("Username {0} is already in use.".ToFormat(FIELD.AsTemplateField())); var msg = new NotificationMessage(token); msg.AddSubstitution(FIELD, username); context.Notification.RegisterMessage(accessor, msg); } }
public void prepend_property() { var message = new NotificationMessage(ValidationKeys.Required); message.AddAccessor(ReflectionHelper.GetAccessor<ContinuationRuleTester.ContactModel>(x => x.FirstName)); message.AddAccessor(ReflectionHelper.GetAccessor<ContinuationRuleTester.ContactModel>(x => x.LastName)); var property = ReflectionHelper.GetAccessor<CompositeModel>(x => x.Contact); var prepended = message.Prepend(property); prepended.ShouldNotBeTheSameAs(message); prepended.Accessors.Select(x => x.Name).ShouldHaveTheSameElementsAs("ContactFirstName", "ContactLastName"); prepended.StringToken.ShouldBe(ValidationKeys.Required); }
public void get_message_without_subsitutions() { var message = new NotificationMessage(NotificationMessageKeys.NO_SUBSTITUTION); message.GetMessage().ShouldBe(NotificationMessageKeys.NO_SUBSTITUTION.ToString()); }
public void create_by_string() { var message = new NotificationMessage("Some message"); message.GetMessage().ShouldBe("Some message"); }
public NotificationMessage Prepend(Accessor accessor) { var prependedAccessors = _accessors.Select(x => x.Prepend(accessor)).ToList(); var message = new NotificationMessage(StringToken, _template.Values.ToArray()); message._accessors.AddRange(prependedAccessors); return message; }