Esempio n. 1
0
 public static bool ValidateBookLoanGuid(this ReturnBookCommand command)
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.ValidateGuidFromString(command.LoanId,
                                                                                     Messages.BookReturn_LoanGuidStringIsEmpty,
                                                                                     Messages.BookReturn_LoanGuidIsEmpty,
                                                                                     Messages.BookReturn_LoanGuidIsInvalid)));
 }
Esempio n. 2
0
 // Responsible for validate business rules
 public bool Validate()
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.HasMinimumLength(string.IsNullOrWhiteSpace(Name) ? "" : Name, 5, Resources.Messages.Person_NameMiniumCharError),
                                            AssertionsConcern.IsStringNotNullOrWhiteSpace(Document, Resources.Messages.Person_DocumentIsEmptyError),
                                            AssertionsConcern.HasLengthEquals(Document, 11, Resources.Messages.Person_DocumentWrognCharCount),
                                            AssertionsConcern.IsGreaterThanOrEquals(PhoneNumbers?.Count(), 1, Resources.Messages.Person_ShouldHaveAtLeastOnePhoneNumber)));
 }
Esempio n. 3
0
 public bool Validate()
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsGuidNotNull(AuthorId, Resources.Messages.Author_AuthorGuidIsNull),
                                            AssertionsConcern.IsGuidNotEmpty(AuthorId, Resources.Messages.Author_AuthorGuidIsEmpty),
                                            AssertionsConcern.IsNotNull(Name, Resources.Messages.Author_AuthorNameIsNull),
                                            AssertionsConcern.IsGreaterThanOrEquals(Name?.Length, 5, Resources.Messages.Author_AuthorNameShouldHaveAtLeastFiveChars),
                                            AssertionsConcern.IsLowerOrEquals(Name?.Length, 100, Resources.Messages.Author_AuthorNameNoLongerThantAHundredChars)));
 }
Esempio n. 4
0
 private bool ValidateISBN()
 {
     if (ReleaseYear <= 2007)
     {
         return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.HasLengthEquals(ISBN, 10, Messages.Book_ISBNShouldHave10Chars)));
     }
     else
     {
         return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.HasLengthEquals(ISBN, 13, Messages.Book_ISBNShouldHave13Chars)));
     }
 }
Esempio n. 5
0
        public bool Validate()
        {
            bool generalValidations = AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsStringNotNullOrWhiteSpace(Title, Messages.Book_TitleShouldNotBeNullOrEmpty),
                                                                      AssertionsConcern.IsGreaterThanOrEquals(ReleaseYear, 1, Messages.Book_ReleaseYearShouldNotBeLowerThan1),
                                                                      AssertionsConcern.IsLowerOrEquals(ReleaseYear, DateTime.Now.Year, Messages.Book_ReleaseYearCannotBeGraterThanCurrentYear),
                                                                      AssertionsConcern.IsGreaterThan(Edition, 0, Messages.Book_EditionCannotBeLowerThan1),
                                                                      AssertionsConcern.IsNotNull(Author, Messages.Book_AuthorShouldNotBeNull));
            bool ISBNValidations = ValidateISBN();

            return(generalValidations && ISBNValidations);
        }
Esempio n. 6
0
 public static bool ValidateAuthorGuid(this AddBookCommand command)
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.ValidateGuidFromString(command.AuthorId, Messages.Book_AuthorGuidStringIsEmpty, Messages.Author_AuthorGuidIsEmpty, Messages.Book_AuthorGuidIsInvalid)));
 }
Esempio n. 7
0
 public static bool ValidateAuthorNotNul(this AddBookCommand command, Author author)
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsNotNull(author, Messages.Book_AuthorShouldNotBeNull)));
 }
Esempio n. 8
0
 public static bool HasPersonNull(this AddPersonCommand command, Person person)
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsNull(person, Messages.Person_PersonWithDocumentExists)));
 }
Esempio n. 9
0
 public static bool ValidateBookLoanExists(this ReturnBookCommand command, BookLoan bookLoan)
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsNotNull(bookLoan, "Book loan not found")));
 }
Esempio n. 10
0
 private bool ValidatePreLend()
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsEquals(Book.BookSituation.Value, BookSituationEnum.Awaiting.Value, Resources.Messages.BookLoan_BookIsAlreadyLent)));
 }
Esempio n. 11
0
 private bool ValidateReturn()
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsEquals(Book.BookSituation.Value, BookSituationEnum.Lent.Value, Resources.Messages.BookLoan_BookIsNotLent)));
 }
Esempio n. 12
0
 private bool ValidateLend()
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsEquals(Book.BookSituation.ToString(), BookSituationEnum.Lent.ToString(), Resources.Messages.BookLoan_BookSituationShouldBeLent),
                                            AssertionsConcern.IsDateEquals(ExpectedReturnDate.Date, DateTime.Now.Date.AddDays(3), Resources.Messages.BookLoan_BookShouldBeReturnedWithin3Days)));
 }
Esempio n. 13
0
 public bool Validate()
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsNotNull(Book, Resources.Messages.BookLoan_BookIsNull),
                                            AssertionsConcern.IsNotNull(Taker, Resources.Messages.BookLoan_TakerIsNull)));
 }
Esempio n. 14
0
 public static bool ValidatePersonNotNul(this RequestLoanCommand command, Person person)
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsNotNull(person, Messages.BookLoan_PersonNotFound)));
 }
Esempio n. 15
0
 public static bool ValidateBookNotNul(this RequestLoanCommand command, Book book)
 {
     return(AssertionsConcern.IsSatisfiedBy(AssertionsConcern.IsNotNull(book, Messages.BookLoan_BookNotFound)));
 }