public void TestUpdatePublisher() { var publisherToCreate = new CreatePublisherDto("Test library", "https://ingvilt.test.url", -1, "test desc", testLibrary.LibraryId); var publisherId = repository.CreatePublisher(publisherToCreate); var publisherRetrieved = repository.GetPublisher(publisherId).Result; var fileId = mediaFileRepository.CreateMediaFile(new CreateMediaFileDto("C:/test.jpg", MediaFileType.IMAGE_TYPE, "test")); publisherRetrieved.Description += "1"; publisherRetrieved.Name += "2"; publisherRetrieved.SiteURL = "https://ingvilt.test2.url"; publisherRetrieved.LogoFileId = fileId; repository.UpdatePublisher(publisherRetrieved); var updatedPublisherRetrieved = repository.GetPublisher(publisherId).Result; Assert.AreEqual(publisherRetrieved.PublisherId, updatedPublisherRetrieved.PublisherId); Assert.AreEqual(publisherRetrieved.Name, updatedPublisherRetrieved.Name); Assert.AreEqual(publisherRetrieved.Description, updatedPublisherRetrieved.Description); Assert.AreEqual(publisherRetrieved.LibraryId, updatedPublisherRetrieved.LibraryId); Assert.AreEqual(publisherRetrieved.LogoFileId, updatedPublisherRetrieved.LogoFileId); Assert.AreEqual(publisherRetrieved.SiteURL, updatedPublisherRetrieved.SiteURL); CollectionAssert.AreEquivalent(new List <Publisher>() { updatedPublisherRetrieved }, repository.GetPublishers(GetFirstPage()).Result.Results); }
public IActionResult Post( [FromBody] CreatePublisherDto dto, [FromServices] ICreatePublisherCommand command) { _executor.ExecuteCommand(command, dto); return(StatusCode(StatusCodes.Status201Created)); }
public long CreatePublisher(CreatePublisherDto dto) { using (var db = DataAccessUtil.CreateSqlConnection()) { db.Open(); var command = GetCreatePublisherCommand(db, dto, UniqueIdUtil.GenerateUniqueId(), false); command.ExecuteNonQuery(); return(QueryUtil.GetLastInsertedPrimaryKey(db)); } }
public void Execute(CreatePublisherDto request) { var publisher = new Publisher { Name = request.Name, City = request.City, State = request.State }; _context.Publishers.Add(publisher); _context.SaveChanges(); }
public void ShouldNotDeletePublisher_WhenDifferentLibraryDeleted() { var otherLibrary = CreateAndRetrieveLibrary(new CreateLibraryDto("test 2")); var publisherToCreate = new CreatePublisherDto("Test library", "https://ingvilt.test.url", -1, "test desc", otherLibrary.LibraryId); var publisherId = repository.CreatePublisher(publisherToCreate); var publisherRetrieved = repository.GetPublisher(publisherId).Result; libraryRepository.DeleteLibrary(testLibrary.LibraryId); CollectionAssert.AreEquivalent(new List <Publisher>(), repository.GetDeletedPublishers(GetFirstPage()).Result.Results); CollectionAssert.AreEquivalent(new List <Publisher>() { publisherRetrieved }, repository.GetPublishers(GetFirstPage()).Result.Results); }
public void TestCreatePublisher_WithLogo() { var fileId = mediaFileRepository.CreateMediaFile(new CreateMediaFileDto("C:/test.jpg", MediaFileType.IMAGE_TYPE, "test")); var publisherToCreate = new CreatePublisherDto("Test library", "https://ingvilt.test.url", fileId, "test desc", testLibrary.LibraryId); var publisherId = repository.CreatePublisher(publisherToCreate); var publisherRetrieved = repository.GetPublisher(publisherId).Result; Assert.AreEqual(publisherId, publisherRetrieved.PublisherId); Assert.AreEqual(publisherToCreate.Name, publisherRetrieved.Name); Assert.AreEqual(publisherToCreate.Description, publisherRetrieved.Description); Assert.AreEqual(publisherToCreate.LibraryId, publisherRetrieved.LibraryId); Assert.AreEqual(publisherToCreate.LogoFileId, publisherRetrieved.LogoFileId); Assert.AreEqual(publisherToCreate.SiteURL, publisherRetrieved.SiteURL); }
public void TestCreatePublisher_WithNullLogo() { var publisherToCreate = new CreatePublisherDto("Test library", "https://ingvilt.test.url", -1, "test desc", testLibrary.LibraryId); var publisherId = repository.CreatePublisher(publisherToCreate); var publisherRetrieved = repository.GetPublisher(publisherId).Result; Assert.AreEqual(publisherId, publisherRetrieved.PublisherId); Assert.AreEqual(publisherToCreate.Name, publisherRetrieved.Name); Assert.AreEqual(publisherToCreate.Description, publisherRetrieved.Description); Assert.AreEqual(publisherToCreate.LibraryId, publisherRetrieved.LibraryId); Assert.AreEqual(publisherToCreate.LogoFileId, publisherRetrieved.LogoFileId); Assert.AreEqual(publisherToCreate.SiteURL, publisherRetrieved.SiteURL); Assert.IsNotNull(publisherRetrieved.UniqueId); }
private SqliteCommand GetCreatePublisherCommand(SqliteConnection db, CreatePublisherDto dto, string guid, bool ignoreDuplicates) { var ignoreClause = ignoreDuplicates ? "OR IGNORE" : ""; var command = new SqliteCommand(); command.Connection = db; command.CommandText = $"INSERT {ignoreClause} INTO publisher(name, site_url, logo_image, description, library_id, deleted, deletion_due_to_cascade, unique_id) VALUES(@Name, @Url, @LogoId, @Description, @LibraryId, false, false, @UniqueId)"; command.Parameters.AddWithValue("@Name", dto.Name); command.Parameters.AddWithValue("@Url", dto.SiteURL); command.Parameters.AddWithValue("@Description", dto.Description); command.Parameters.AddWithValue("@LibraryId", dto.LibraryId); command.Parameters.AddWithValue("@LogoId", QueryUtil.GetNullableIdForStorage(dto.LogoFileId)); command.Parameters.AddWithValue("@UniqueId", guid); return(command); }
public void TestUpdatePublisher_ShouldNotUpdateDifferentPublisher() { var publisherDto = new CreatePublisherDto("Test library", "https://ingvilt.test.url", -1, "test desc", testLibrary.LibraryId); var publisherToUpdateId = repository.CreatePublisher(publisherDto); var publisherNotUpdatedId = repository.CreatePublisher(publisherDto); var publisherToUpdate = repository.GetPublisher(publisherToUpdateId).Result; publisherToUpdate.Description += "1"; repository.UpdatePublisher(publisherToUpdate); var publisherToNotUpdate = repository.GetPublisher(publisherNotUpdatedId).Result; Assert.AreNotEqual(publisherToUpdate.Description, publisherToNotUpdate.Description); }
public void TestCreateLocation_WithPublisher() { var publisherDto = new CreatePublisherDto("test", "", -1, "", testLibrary.LibraryId); var publisher = new PublisherService().CreateAndRetrievePublisher(publisherDto); var tagName = "Test name"; var description = "Test tag"; var locationId = repository.CreateLocation(new CreateLocationDto(tagName, description, testLibrary.LibraryId, publisher.PublisherId, -1)); var location = repository.GetLocation(locationId); Assert.AreEqual(tagName, location.Name); Assert.AreEqual(description, location.Description); Assert.AreEqual(locationId, location.LocationId); Assert.AreEqual(testLibrary.LibraryId, location.LibraryId); Assert.AreEqual(publisher.PublisherId, location.PublisherId); Assert.AreEqual(DatabaseConstants.DEFAULT_ID, location.CoverFileId); }
public void ShouldNotRestorePublisherDeletedNormally_WhenLibraryRestored() { var publisherToCreate = new CreatePublisherDto("Test library", "https://ingvilt.test.url", -1, "test desc", testLibrary.LibraryId); var publisherId = repository.CreatePublisher(publisherToCreate); repository.DeletePublisher(publisherId).ConfigureAwait(false); libraryRepository.DeleteLibrary(testLibrary.LibraryId); libraryRepository.RestoreDeletedLibrary(testLibrary.LibraryId); var publisherRetrieved = repository.GetPublisher(publisherId).Result; CollectionAssert.AreEquivalent(new List <Publisher>() { publisherRetrieved }, repository.GetDeletedPublishers(GetFirstPage()).Result.Results); CollectionAssert.AreEquivalent(new List <Publisher>(), repository.GetPublishers(GetFirstPage()).Result.Results); }
public async Task CreatePublisher(CreatePublisherDto newPublisher) { using (unitOfWork) { var publisher = unitOfWork.PublisherRepository.GetSingleAsync(p => p.Name == newPublisher.Name); if (await publisher != null) { throw new ArgumentException("Publisher with such Name already exists"); } unitOfWork.PublisherRepository.Create(new Publisher() { Name = newPublisher.Name }); await unitOfWork.CommitAsync(); } }
public void CreatePublisher_ValidMethodParameter_True() { //assign Publisher returnNull = null; CreatePublisherDto newPublisher = new CreatePublisherDto() { Name = "Ubisoft" }; publisherRepositoryMoq.Setup((p) => p.GetSingleAsync(It.IsAny <Expression <Func <Publisher, bool> > >())) .Returns(Task.FromResult(returnNull)); //act service.CreatePublisher(newPublisher); //assign publisherRepositoryMoq.Verify(p => p.Create(It.IsAny <Publisher>()), Times.Once); unitofworkMoq.Verify(p => p.CommitAsync(), Times.Once); }
public void CreatePublisher_PublisherNameAlreadyexists_ThrowArgumentException() { //assign Publisher existedEntity = new Publisher() { Id = 1, Name = "Ubisoft" }; CreatePublisherDto newPublisher = new CreatePublisherDto() { Name = "Ubisoft" }; publisherRepositoryMoq.Setup((p) => p.GetSingleAsync(It.IsAny <Expression <Func <Publisher, bool> > >())) .Returns(Task.FromResult(existedEntity)); //act Assert.ThrowsAsync <ArgumentException>(async() => { await service.CreatePublisher(newPublisher); }); //assign unitofworkMoq.Verify(p => p.CommitAsync(), Times.Never); }
public Publisher CreateAndRetrievePublisher(CreatePublisherDto dto) { long libraryId = CreatePublisher(dto); return(new Publisher(libraryId, dto)); }
public long CreatePublisher(CreatePublisherDto dto) { return(publisherRepository.CreatePublisher(dto)); }
private Publisher CreateAndRetrievePublisher(CreatePublisherDto dto) { var id = repository.CreatePublisher(dto); return(repository.GetPublisher(id).Result); }