示例#1
0
        //فردی با نام ونام خانوادگی امید جمالی و سن 31 سال و آدرس بلوار محراب در تاریخ 25/02/1400 کتاب
        //با عنوان دیوان اشعار فروغ و تاریخ برگشت تعیین شده 30/02/1400 را تحویل میدهد
        private async void When()
        {
            _realShamsiToMiladiDate = new DateTime(1400, 2, 25, new PersianCalendar());
            var dto = EntrustFactory.GenerateEntrustRealReturnDateDto(_realShamsiToMiladiDate);

            _entrustId = await _sut.UpdateEntrustRealReturnDate(_entrust.Id, dto);
        }
        public async void Update_update_real_return_date_properly()
        {
            _context.Manipulate(_ => _.BookCategories.Add(_category));
            var book = new BookBuilder()
                       .BuildBookWithCategoryId(_category.Id)
                       .BuildBookWithAgeRange(15)
                       .Build();

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

            _context.Manipulate(_ => _.Members.Add(member));
            var determinateShamsiToMiladi = new DateTime(1400, 2, 30, new PersianCalendar());
            var entrust = EntrustFactory.GenerateEntrust(book.Id, member.Id, determinateShamsiToMiladi);

            _context.Manipulate(_ => _.Entrusts.Add(entrust));
            var realShamsiToMiladiDate = new DateTime(1400, 2, 25, new PersianCalendar());
            var dto = EntrustFactory.GenerateEntrustRealReturnDateDto(realShamsiToMiladiDate);

            var actual = await _sut.UpdateEntrustRealReturnDate(entrust.Id, dto);

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

            expected.RealReturnDate.Should().Be(realShamsiToMiladiDate);
        }
示例#3
0
        //فردی با نام ونام خانوادگی امید جمالی و سن 31 سال و آدرس بلوار محراب در
        //تاریخ05/03/1400 کتاب با عنوان دیوان اشعار فروغ و تاریخ برگشت تعیین شده 30/02/1400 را تحویل میدهد
        private async void When()
        {
            var realDateShamsiToMiladi = new DateTime(1400, 3, 5, new PersianCalendar());
            var dto = EntrustFactory.GenerateEntrustRealReturnDateDto(realDateShamsiToMiladi);

            _expected = () => _sut.UpdateEntrustRealReturnDate(_entrust.Id, dto);
        }
        public void Add_failed_when_member_age_not_in_valid_range()
        {
            _context.Manipulate(_ => _.BookCategories.Add(_category));
            var book = new BookBuilder()
                       .BuildBookWithCategoryId(_category.Id)
                       .BuildBookWithAgeRange(15)
                       .Build();

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

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

            Func <Task> expected = () => _sut.AddEntrust(dto);

            expected.Should().ThrowExactly <FailedAddEntrustWhenMemberAgeIsNotInValidRanegException>();
        }
示例#5
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));
        }
        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);
        }
        public async void Get_find_entrust_by_id()
        {
            _context.Manipulate(_ => _.BookCategories.Add(_category));
            var book = new BookBuilder()
                       .BuildBookWithCategoryId(_category.Id)
                       .BuildBookWithAgeRange(15)
                       .Build();

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

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

            _context.Manipulate(_ => _.Entrusts.Add(entrust));

            var expected = await _sut.FindEntrustById(entrust.Id);

            expected.BookId.Should().Be(book.Id);
            expected.MemberId.Should().Be(member.Id);
            expected.DeterminateReturnDate.Should().Be(DateTime.Today);
        }
        public void Update_failed_when_determinate_return_date_was_expired()
        {
            _context.Manipulate(_ => _.BookCategories.Add(_category));
            var book = new BookBuilder()
                       .BuildBookWithCategoryId(_category.Id)
                       .BuildBookWithAgeRange(15)
                       .Build();

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

            _context.Manipulate(_ => _.Members.Add(member));
            var determinateShamsiToMiladi = new DateTime(1400, 2, 30, new PersianCalendar());
            var entrust = EntrustFactory.GenerateEntrust(book.Id, member.Id, determinateShamsiToMiladi);

            _context.Manipulate(_ => _.Entrusts.Add(entrust));
            var realShamsiToMiladiDate = new DateTime(1400, 3, 5, new PersianCalendar());
            var dto = EntrustFactory.GenerateEntrustRealReturnDateDto(realShamsiToMiladiDate);

            Func <Task> expected = () => _sut.UpdateEntrustRealReturnDate(entrust.Id, dto);

            expected.Should().ThrowExactly <FailedWhenDeterminateReturnDateWasExpiredException>();
        }
示例#9
0
        //کتاب با عنوان دیوان اشعار فروغ و رده سنی
        //بالای 15 سال به نوسندگی فروغ فرخزاد به عضوی با نام و نام خانوادگی امید جمالی
        //و سن 31 سال و آدرس بلوار محراب و تاریخ برگشت تعیین شده 30/02/1400 امانت داده میشود
        private async void When()
        {
            var dto = EntrustFactory.GenerateAddEntrustDto(_book.Id, _member.Id, DateTime.UtcNow.Date);

            _entrustId = await _sut.AddEntrust(dto);
        }
        //کتاب با عنوان دیوان اشعار فروغ و رده سنی بالای 15 سال به
        //عضوی با نام و نام خانوادگی بردیا جمالی و سن 11 سال امانت داده میشود
        private void When()
        {
            var dto = EntrustFactory.GenerateAddEntrustDto(_book.Id, _member.Id, DateTime.Today);

            _expected = () => _sut.AddEntrust(dto);
        }