public void Add_add_book_properly()
        {
            //Arrange
            BookCategory category = new BookCategory()
            {
                Title = "dummy-title",
            };

            context.Manipulate(_ => _.BookCategories.Add(category));
            AddBookDto dto = new AddBookDto()
            {
                Title      = "dummy-title",
                AgeRange   = AgeRange.oneToTen,
                CategoryId = category.Id,
            };

            //Act
            int actualReturnedId = sut.Add(dto);

            //Assert
            var expected = readContext.Books.Single(_ => _.Id == actualReturnedId);

            expected.Title.Should().Be(dto.Title);
            expected.AgeRange.Should().Be(dto.AgeRange);
            expected.CategoryId.Should().Be(dto.CategoryId);
        }
        public void Add_add_borrowed_book_properly()
        {
            //Arrange
            BookCategory category = BorrowedBookFactory.GenerateDummyBookCategory();

            context.Manipulate(_ => _.BookCategories.Add(category));
            Writer writer = BorrowedBookFactory.GenerateDummyWriter();

            context.Manipulate(_ => _.Writers.Add(writer));
            Book book = BorrowedBookFactory.GenerateDummyBook();

            book.CategoryId = category.Id;
            book.WriterId   = writer.Id;
            context.Manipulate(_ => _.Books.Add(book));
            Member member = BorrowedBookFactory.GenerateDummyMember();

            context.Manipulate(_ => _.Members.Add(member));
            AddBorrowedBookDto dto = new AddBorrowedBookDto()
            {
                MemberAge    = member.Age,
                BookTitle    = book.Title,
                BookAgeRange = book.AgeRange,
            };

            //Act
            sut.Add(dto);

            //Assert
            var expected = readContext.BorrowedBooks.Single(_ => _.Title == dto.BookTitle);

            expected.Title.Should().Be(dto.BookTitle);
            expected.ReturnDate.Should().BeAfter(DateTime.Now);
        }
Example #3
0
        //یک دسته بندی با عنوان شعر و ادبیات در فهرست دسته بندی ها وجود دارد
        //و فقط یک کتاب به نویسندگی فروغ فرخزاد با عنوان دیوان اشعار فروغ و
        //رنج سنی بالای 15 سال در فهرست کتاب ها و در دسته شعر و ادبیات وجود دارد
        private void Given()
        {
            _bookCategory = BookCategoryFactory.GenerateBookCategory("شعروادبیات");
            _context.Manipulate(_ => _.BookCategories.Add(_bookCategory));

            _book = new BookBuilder().BuildBookWithName("دیوان اشعارفروغ")
                    .BuildBookWithAuthor("فروغ فرخزاد")
                    .BuildBookWithAgeRange(15)
                    .BuildBookWithCategoryId(_bookCategory.Id)
                    .Build();
            _context.Manipulate(_ => _.Books.Add(_book));
        }
Example #4
0
        //یک دسته بندی با عنوان شعر و ادبیات در فهرست دسته بندی ها وجود دارد
        // و یک کتاب به نویسندگی فروغ فرخزاد با عنوان دیوان اشعار فروغ و
        // رده سنی بالای 15 سال در فهرست کتاب ها و در دسته شعر و ادبیات وجود دارد
        //و یک عضو با نام ونام خانوادگی
        //امید جمالی و سن 31 سال و آدرس بلوار محراب در فهرست اعضا وجود دارد
        //و هیچ امانتی در فهرست کتاب های امانت داده شده وجود ندارد
        private void Given()
        {
            var bookCategory = BookCategoryFactory.GenerateBookCategory("شعروادبیات");

            _context.Manipulate(_ => _.BookCategories.Add(bookCategory));

            _book = new BookBuilder().BuildBookWithName("دیوان اشعارفروغ")
                    .BuildBookWithAuthor("فروغ فرخزاد")
                    .BuildBookWithAgeRange(15)
                    .BuildBookWithCategoryId(bookCategory.Id)
                    .Build();
            _context.Manipulate(_ => _.Books.Add(_book));
            _member = MemberFactory.GenerateMember("بلوارمحراب", 31, "امیدجمالی");
            _context.Manipulate(_ => _.Members.Add(_member));
        }
 // Given[("تنها یک کتاب با عنوان راهنمای اشپزی
 // و تاریخ برگشت 05/05/2021 در فهرست کتابهای به امانت سپرده شده موجود باشد")]
 //
 private void Given()
 {
     borrowedBook = new BorrowedBook()
     {
         Title      = "راهنمای اشپزی",
         ReturnDate = DateTime.Parse("05/05/2021")
     };
     context.Manipulate(_ => _.BorrowedBooks.Add(borrowedBook));
 }
Example #6
0
        //یک دسته بندی با عنوان شعر و ادبیات در فهرست دسته بندی ها وجود دارد
        //و یک کتاب به نویسندگی فروغ فرخزاد با عنوان دیوان اشعار فروغ و رده سنی بالای 15 سال در فهرست کتاب ها و در دسته شعر و ادبیات وجود دارد
        //و یک عضو با نام ونام خانوادگی امید جمالی و سن 31 سال و آدرس بلوار محراب در فهرست اعضا وجود دارد
        //و فقط یک امانت کتاب با عنوان دیوان اشعار فروغ به نویسندگی
        //فروغ فرخزاد و رده سنی بالای 15 سال برای فردی با نام و نام خانوادگی امید جمالی و سن 31 سال
        //و آدرس بلوار محراب و تاریخ برگشت مورد انتظار30/02/1400 در فهرست کتاب های امانت داده شده وجود دارد.
        private void Given()
        {
            var bookCategory = BookCategoryFactory.GenerateBookCategory("شعروادبیات");

            _context.Manipulate(_ => _.BookCategories.Add(bookCategory));
            var book = new BookBuilder()
                       .BuildBookWithCategoryId(bookCategory.Id)
                       .BuildBookWithAgeRange(15)
                       .BuildBookWithAuthor("فروغ فرخزاد")
                       .BuildBookWithName("دیوان اشعارفروغ")
                       .Build();

            _context.Manipulate(_ => _.Books.Add(book));
            var member = MemberFactory.GenerateMember("بلوارمحراب", 31, "امیدجمالی");

            _context.Manipulate(_ => _.Add(member));
            _determinateShamsiToMiladiDate = new DateTime(1400, 2, 30, new PersianCalendar());
            _entrust = EntrustFactory.GenerateEntrust(book.Id, member.Id, _determinateShamsiToMiladiDate);
            _context.Manipulate(_ => _.Entrusts.Add(_entrust));
        }
Example #7
0
        //یک دسته بندی با عنوان شعر و ادبیات در فهرست دسته بندی ها وجود دارد
        //و به تعداد 3 کتاب با عنوان های دیوان فروغ ،
        //دیوان حافظ و گلستان سعدی در فهرست کتاب ها در دسته شعر وادبیات تعریف شده است
        private void Given()
        {
            _bookCategory = BookCategoryFactory.GenerateBookCategory("شعروادبیات");
            _context.Manipulate(_ => _.BookCategories.Add(_bookCategory));
            var bookFrogh = new BookBuilder()
                            .BuildBookWithName("دیوان فروغ")
                            .BuildBookWithCategoryId(_bookCategory.Id)
                            .Build();
            var bookHafez = new BookBuilder()
                            .BuildBookWithName("دیوان حافظ")
                            .BuildBookWithCategoryId(_bookCategory.Id)
                            .Build();
            var bookSaadi = new BookBuilder()
                            .BuildBookWithName("گلستان سعدی")
                            .BuildBookWithCategoryId(_bookCategory.Id)
                            .Build();

            _context.Manipulate(_ => _.Books.Add(bookFrogh));
            _context.Manipulate(_ => _.Books.Add(bookHafez));
            _context.Manipulate(_ => _.Books.Add(bookSaadi));
        }
        public async void Get_find_member_by_member_id()
        {
            var member = MemberFactory.GenerateMember("dummy-address", 31, "dummy-fullname");

            _context.Manipulate(_ => _.Add(member));

            var expected = await _sut.FindMemberById(member.Id);

            expected.Age.Should().Be(31);
            expected.FullName.Should().Be("dummy-fullname");
            expected.Address.Should().Be("dummy-address");
        }
Example #9
0
        public async void Add_add_book_properly()
        {
            BookCategory bookCategory = BookCategoryFactory.GenerateBookCategory();

            _context.Manipulate(_ => _.BookCategories.Add(bookCategory));
            Book book = new BookBuilder()
                        .BuildBookWithCategoryId(bookCategory.Id)
                        .Build();
            var dto = BookDtoFactory.GenerateAddBookDto(book.BookCategoryId, book.MinAgeNeed
                                                        , book.Author, book.Name);

            var actual = await _sut.AddBook(dto);

            var expected = _readContext.Books.Single(_ => _.Id == actual);

            expected.MinAgeNeed.Should().Be(15);
            expected.Author.Should().Be("dummy-author");
            expected.BookCategoryId.Should().Be(bookCategory.Id);
            expected.Name.Should().Be("dummy-name");
            expected.Id.Should().Be(actual);
        }
Example #10
0
 //یک دسته بندی با عنوان شعر و ادبیات در فهرست دسته بندی ها وجود دارد
 private void Given()
 {
     _bookCategory = BookCategoryFactory.GenerateBookCategory("شعروادبیات");
     _context.Manipulate(_ => _.BookCategories.Add(_bookCategory));
 }
        public async void Add_add_entrust_properly()
        {
            _context.Manipulate(_ => _.BookCategories.Add(_category));
            var book = new BookBuilder()
                       .BuildBookWithCategoryId(_category.Id)
                       .Build();

            _context.Manipulate(_ => _.Books.Add(book));
            var member = MemberFactory.GenerateMember("dummy-address", 31, "dummy-fulname");

            _context.Manipulate(_ => _.Members.Add(member));
            var dto = EntrustFactory.GenerateAddEntrustDto(book.Id, member.Id, DateTime.Today);

            var actual = await _sut.AddEntrust(dto);

            var expected = _readContext.Entrusts.Single(_ => _.Id == actual);

            expected.BookId.Should().Be(book.Id);
            expected.MemberId.Should().Be(member.Id);
            expected.DeterminateReturnDate.Should().Be(DateTime.Today);
        }