Example #1
0
        public async Task Read_returns_mapped_EventStockDTO()
        {
            using (var connection = await CreateConnectionAsync())
                using (var context = await CreateContextAsync(connection))
                {
                    var entity = new EventStock
                    {
                        EventId  = 1,
                        PersonId = 1,
                        WineId   = 1
                    };

                    context.EventStocks.Add(entity);
                    await context.SaveChangesAsync();

                    var id = entity.Id;

                    var repository = new EventStockRepository(context);

                    var eventStocks = await repository.ReadAsync();

                    var eventStock = eventStocks.FirstOrDefault();

                    Assert.Equal(1, eventStocks.Count);
                    Assert.Equal(entity.EventId, eventStock.EventId);
                    Assert.Equal(entity.PersonId, eventStock.PersonId);
                    Assert.Equal(entity.WineId, eventStock.WineId);
                }
        }
Example #2
0
        public async Task DeleteAsync_given_existing_eventStockId_deletes_it()
        {
            using (var connection = await CreateConnectionAsync())
                using (var context = await CreateContextAsync(connection))
                {
                    var entity = new EventStock
                    {
                        EventId  = 2,
                        PersonId = 3,
                        WineId   = 4
                    };

                    context.EventStocks.Add(entity);
                    await context.SaveChangesAsync();

                    var id = entity.Id;

                    var repository = new EventStockRepository(context);

                    var deleted = await repository.DeleteAsync(id);

                    Assert.True(deleted);

                    var deletedEntity = await context.EventStocks.FindAsync(id);

                    Assert.Null(deletedEntity);
                }
        }
Example #3
0
        public async Task FindAsync_given_existing_id_returns_mapped_EventStockDTO()
        {
            using (var connection = await CreateConnectionAsync())
                using (var context = await CreateContextAsync(connection))
                {
                    var entity = new EventStock
                    {
                        EventId  = 1,
                        PersonId = 1,
                        WineId   = 1
                    };

                    context.EventStocks.Add(entity);
                    await context.SaveChangesAsync();

                    var id = entity.Id;

                    var repository = new EventStockRepository(context);

                    var eventStock = await repository.FindAsync(id);

                    Assert.Equal(1, eventStock.EventId);
                    Assert.Equal(1, eventStock.PersonId);
                    Assert.Equal(1, eventStock.WineId);
                }
        }
Example #4
0
        public async Task FindAsync_given_non_existing_id_returns_null()
        {
            using (var connection = await CreateConnectionAsync())
                using (var context = await CreateContextAsync(connection))
                {
                    var repository = new EventStockRepository(context);

                    var eventStock = await repository.FindAsync(42);

                    Assert.Null(eventStock);
                }
        }
Example #5
0
        public async Task DeleteAsync_given_non_existing_eventStockId_returns_false()
        {
            using (var connection = await CreateConnectionAsync())
                using (var context = await CreateContextAsync(connection))
                {
                    var repository = new EventStockRepository(context);

                    var success = await repository.DeleteAsync(42);

                    Assert.False(success);
                }
        }
Example #6
0
        public async Task UpdateAsync_given_non_existing_eventStock_returns_false()
        {
            using (var connection = await CreateConnectionAsync())
                using (var context = await CreateContextAsync(connection))
                {
                    var repository = new EventStockRepository(context);

                    var eventStock = new EventStockDTO {
                        Id = 42
                    };

                    var updated = await repository.UpdateAsync(eventStock);

                    Assert.False(updated);
                }
        }
Example #7
0
        public async Task UpdateAsync_given_eventStock_updates_it()
        {
            using (var connection = await CreateConnectionAsync())
                using (var context = await CreateContextAsync(connection))
                {
                    var entity = new EventStock
                    {
                        EventId  = 1,
                        PersonId = 1,
                        WineId   = 1
                    };

                    context.EventStocks.Add(entity);
                    await context.SaveChangesAsync();

                    var id = entity.Id;

                    var repository = new EventStockRepository(context);

                    var eventStock = new EventStockDTO
                    {
                        Id       = id,
                        EventId  = 2,
                        PersonId = 3,
                        WineId   = 4
                    };

                    var updated = await repository.UpdateAsync(eventStock);

                    Assert.True(updated);

                    var updatedEntity = await context.EventStocks.FindAsync(id);

                    Assert.Equal(2, updatedEntity.EventId);
                    Assert.Equal(3, updatedEntity.PersonId);
                    Assert.Equal(4, updatedEntity.WineId);
                }
        }
Example #8
0
        public async Task CreateAsync_given_eventStock_creates()
        {
            using (var connection = await CreateConnectionAsync())
                using (var context = await CreateContextAsync(connection))
                {
                    var repository = new EventStockRepository(context);

                    var eventStock = new EventStockDTO
                    {
                        EventId  = 1,
                        PersonId = 1,
                        WineId   = 1
                    };

                    var created = await repository.CreateAsync(eventStock);

                    var entity = await context.EventStocks.FindAsync(created);

                    Assert.Equal(1, entity.EventId);
                    Assert.Equal(1, entity.PersonId);
                    Assert.Equal(1, entity.WineId);
                }
        }