public void UploadVideo_ShouldCreateVideo() { var videoRepositoryMock = new Mock <IRepository <Video> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); var commentRepositoryMock = new Mock <IRepository <Comment> >(); Video video = null; videoRepositoryMock.Setup(x => x.Add(It.IsAny <Video>())) .Callback <Video>(r => video = r);; Guid id = Guid.NewGuid(); VideoServices videoService = new VideoServices(videoRepositoryMock.Object, unitOfWorkMock.Object, commentRepositoryMock.Object); VidconfileUser user = new VidconfileUser(); byte[] videoData = new byte[2]; string thumbnailUrl = "far"; string description = "hi"; string title = "fasd"; videoService.UploadVideo(user, videoData, description, thumbnailUrl, title); Assert.Same(user, video.Uploader); Assert.Same(videoData, video.VideoData); Assert.Same(thumbnailUrl, video.ThumbnailUrl); Assert.Same(description, video.Description); Assert.Same(title, video.Title); videoRepositoryMock.Verify(x => x.Add(It.IsAny <Video>()), Times.Once()); unitOfWorkMock.Verify(x => x.Commit(), Times.Once()); }
public void UploadVideo_NullDescription_ShouldThrow() { var videoRepositoryMock = new Mock <IRepository <Video> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); var commentRepositoryMock = new Mock <IRepository <Comment> >(); var videos = new List <Video>(); Guid id = Guid.NewGuid(); VideoServices videoService = new VideoServices(videoRepositoryMock.Object, unitOfWorkMock.Object, commentRepositoryMock.Object); VidconfileUser user = new VidconfileUser(); byte[] videoData = new byte[4]; string thumbnailUrl = "asd"; string title = "test"; string message = Assert.Throws <NullReferenceException>(() => videoService.UploadVideo(user, videoData, null, thumbnailUrl, title)) .Message; Assert.Same("description cannot be null", message); }