public async Task Remove_Series()
        {
            var series = await SeriesHelpers.CreateValidSeries();

            var repository = new SeriesRepository(_fixture.Context);

            (await repository.ExistsAsync(series.Id)).Should().BeTrue();

            await SeriesHelpers.RemoveSeries(series.Id);

            var sut = await repository.GetAsync(series.Id);

            await _fixture.Context.Entry(sut).ReloadAsync();

            (await repository.ExistsAsync(series.Id)).Should().BeFalse();
        }
Esempio n. 2
0
        public static async Task <Series> CreateValidSeries()
        {
            var connectionString = ConnectivityService.GetConnectionString("TEMP");
            var context          = new BookOrganizer2DbContext(connectionString);
            var repository       = new SeriesRepository(context);

            var seriesService = new SeriesService(repository);

            var command = new Commands.Create
            {
                Id          = new SeriesId(SequentialGuid.NewSequentialGuid()),
                Name        = "Series to be",
                PicturePath = @"\\filepath\file.jpg",
                Description = "Best books in the world!"
            };

            await seriesService.Handle(command);

            return(await repository.GetAsync(command.Id));
        }
        public async Task Update_Series_LogoPath()
        {
            var series = await SeriesHelpers.CreateValidSeries();

            var repository = new SeriesRepository(_fixture.Context);

            (await repository.ExistsAsync(series.Id)).Should().BeTrue();

            var sut = await repository.GetAsync(series.Id);

            var seriesId = sut.Id;

            sut.Should().NotBeNull();
            sut.PicturePath.Should().Be(@"\\filepath\file.jpg");

            await SeriesHelpers.UpdateSeriesPicturePath(sut.Id, @"\\filepath\newFile.jpg");

            await _fixture.Context.Entry(sut).ReloadAsync();

            sut.PicturePath.Should().Be(@"\\filepath\newFile.jpg");
            sut.Id.Should().Be(seriesId);
        }
        public async Task Update_Series_Name()
        {
            var series = await SeriesHelpers.CreateValidSeries();

            var repository = new SeriesRepository(_fixture.Context);

            (await repository.ExistsAsync(series.Id)).Should().BeTrue();

            var sut = await repository.GetAsync(series.Id);

            var seriesId = sut.Id;

            sut.Should().NotBeNull();
            sut.Name.Should().Be("Series to be");

            await SeriesHelpers.UpdateSeriesName(sut.Id, "Series of more books");

            await _fixture.Context.Entry(sut).ReloadAsync();

            sut.Name.Should().Be("Series of more books");
            sut.Id.Should().Be(seriesId);
        }
        public async Task Update_Series_Description()
        {
            var series = await SeriesHelpers.CreateValidSeries();

            var repository = new SeriesRepository(_fixture.Context);

            (await repository.ExistsAsync(series.Id)).Should().BeTrue();

            var sut = await repository.GetAsync(series.Id);

            var seriesId = sut.Id;

            sut.Should().NotBeNull();
            sut.Description.Should().Contain("Best books in the world!");

            await SeriesHelpers.UpdateSeriesDescription(sut.Id, "Bacon ipsum...");

            await _fixture.Context.Entry(sut).ReloadAsync();

            sut.Description.Should().Contain("Bacon ipsum");
            sut.Id.Should().Be(seriesId);
        }
Esempio n. 6
0
        public static async Task <Series> CreateValidSeriesWithBooks()
        {
            var book1 = await BookHelpers.CreateValidBook("Book 1");

            var book2 = await BookHelpers.CreateValidBook("Book 2");

            var connectionString = ConnectivityService.GetConnectionString("TEMP");
            var context          = new BookOrganizer2DbContext(connectionString);

            context.Attach(book1);
            context.Attach(book2);

            var repository = new SeriesRepository(context);

            var seriesService = new SeriesService(repository);

            var readOrder = new List <ReadOrder>
            {
                ReadOrder.NewReadOrder(book1, null, 1),
                ReadOrder.NewReadOrder(book2, null, 2)
            };


            var command = new Commands.Create
            {
                Id          = new SeriesId(SequentialGuid.NewSequentialGuid()),
                Name        = "Series to be",
                PicturePath = @"\\filepath\file.jpg",
                Description = "Best books in the world!",
                Books       = readOrder
            };

            await seriesService.Handle(command);

            return(await repository.GetAsync(command.Id));
        }