public void ThrowArgumentNullExceptionWithProperMessageWhenDiscussionIsNull()
        {
            var mockedRepository   = new Mock <IRepository <Discussion> >();
            var mockedUnitOfWork   = new Mock <IUnitOfWork>();
            var discussionsService = new DiscussionsService(mockedRepository.Object, mockedUnitOfWork.Object);

            Assert.That(() => discussionsService.AddDiscussion(null),
                        Throws.ArgumentNullException.With.Message.Contains("discussion"));
        }
        public void CallUnitOfWorkCommitMethodWhenDiscussionParameterIsValid()
        {
            var mockedRepository   = new Mock <IRepository <Discussion> >();
            var mockedUnitOfWork   = new Mock <IUnitOfWork>();
            var discussionsService = new DiscussionsService(mockedRepository.Object, mockedUnitOfWork.Object);
            var mockedDiscussion   = new Mock <Discussion>();

            discussionsService.AddDiscussion(mockedDiscussion.Object);

            mockedUnitOfWork.Verify(x => x.Commit(), Times.Once());
        }