コード例 #1
0
        public void Should_Change_State_Of_Resource_To_IsAvailable_After_Being_Returned()
        {
            // Arrange
            var membershipId = _normalMember.Id;
            var resourceId   = _book.Id;

            _resourceManager.AddResourceToInventory(_book);
            _membershipManager.AddMembership(_normalMember);
            _borrowingManager.AddEntryToBorrowedItemsHistory(_book, _normalMember);

            // Act
            _library.ReturnItem(resourceId, membershipId);
            var isReturned = _book.IsAvailable;

            // Assert
            Assert.True(isReturned);
        }
コード例 #2
0
        public void Should_Throw_Exception_If_Membership_Id_Borrowing_Limit_Is_Exceeded()
        {
            // Arrange
            const int resourceId   = Book;
            const int membershipId = BronzeBorrowingLimitMember;

            // Act
            _resourceManager.AddResourceToInventory(_book);
            _resourceManager.AddResourceToInventory(_boardGame);
            _membershipManager.AddMembership(_memberWithBronzeBorrowingLimit);
            _library.BorrowItem(BoardGame, membershipId);

            // Assert
            var exception =
                Assert.Throws <MembersBorrowingLimitExceededException>(
                    () => _library.BorrowItem(resourceId, membershipId));

            Assert.Same("Members borrowing limit exceeded", exception.Message);
        }
コード例 #3
0
        public void Should_Return_True_When_When_Member_Is_Active()
        {
            // Arrange
            var id = 1;

            //Act
            _membershipManager.AddMembership(_member);
            var isActiveMembership = _membershipManager.IsMemberActive(id);

            //Assert
            Assert.True(isActiveMembership);
        }