public async Task AddAsync_AddPublication_Publication() { // Arrange var getablePublication = new Mock <IGetablePublication>(); var getableUser = new Mock <IGetableUser>(); var publicationRepository = new Mock <IRepositoryAsync <PublicationEntity> >(); var imageRepositorySystem = new Mock <IImageRepositorySystemAsync>(); var addPublication = new AddPublication( getablePublication.Object, getableUser.Object, publicationRepository.Object, imageRepositorySystem.Object); // Act var result = await addPublication.AddAsync(_publication); // Assert Assert.NotNull(result); Assert.Equal(_publication, result); Assert.Equal(_publication.Id, result.Id); }
public async Task AddAsync_AddInvalidPublication_ObjectAlreadyExistException() { // Arrange var getablePublication = new Mock <IGetablePublication>(); var getableUser = new Mock <IGetableUser>(); var publicationRepository = new Mock <IRepositoryAsync <PublicationEntity> >(); var imageRepositorySystem = new Mock <IImageRepositorySystemAsync>(); getablePublication.Setup(gp => gp.GetAll()) .Returns(_publications); var addPublication = new AddPublication( getablePublication.Object, getableUser.Object, publicationRepository.Object, imageRepositorySystem.Object); Func <Task> act = async() => await addPublication.AddAsync(_publications.ElementAt(0)); // Assert await Assert.ThrowsAsync <ObjectAlreadyExistException>(act); }