Beispiel #1
0
        public async Task CreateAsync_ItemIsAdded()
        {
            // Arrange
            var show = new Show()
            {
                Id   = 101,
                Name = "abc"
            };

            // Act
            using (var context = new TvMazeContext(options))
            {
                var showRepository = new ShowRepository(context);
                await showRepository.CreateIfNotExistsAsync(show);

                await showRepository.SaveAsync();
            }

            // Assert
            using (var context = new TvMazeContext(options))
            {
                Assert.That(await context.Shows.CountAsync(), Is.EqualTo(4));
                Assert.That((await context.Shows.SingleAsync(q => q.Id == 101)).Name, Is.EqualTo("abc"));
            }
        }
        public void CreateAsync_ShowIsNull()
        {
            // Given
            Person person = null;

            using (var context = new TvMazeContext(options))
            {
                var castRepository = new PersonRepository(context);

                Assert.ThrowsAsync <ArgumentNullException>(async() => await castRepository.CreateIfNotExistsAsync(person));
            }
        }
Beispiel #3
0
        public void CreateAsync_ShowIsNull()
        {
            // Given
            Show show = null;

            using (var context = new TvMazeContext(options))
            {
                var showRepository = new ShowRepository(context);

                Assert.ThrowsAsync <ArgumentNullException>(async() => await showRepository.CreateIfNotExistsAsync(show));
            }
        }
Beispiel #4
0
        public void Setup()
        {
            showList = new List <Show>
            {
                new Show {
                    Id = 1, ShowId = 1, Name = "#1 show", Cast = new List <Person>
                    {
                        new Person {
                            Id = 1, Name = "#1 Cast", Birthday = DateTime.Parse("03-01-1980")
                        }
                    }
                },
                new Show {
                    Id = 2, ShowId = 100, Name = "#2 show", Cast = new List <Person>
                    {
                        new Person {
                            Id = 2, Name = "#5 Cast", Birthday = DateTime.Parse("03-01-1980")
                        },
                        new Person {
                            Id = 3, Name = "#9 Cast", Birthday = DateTime.Parse("03-05-1986")
                        }
                    }
                },
                new Show {
                    Id = 3, ShowId = 13457, Name = "#3 show", Cast = new List <Person>
                    {
                        new Person {
                            Id = 4, Name = "#10 Cast", Birthday = DateTime.Parse("10-01-1950")
                        }
                    }
                }
            };

            options = new DbContextOptionsBuilder <TvMazeContext>()
                      .UseInMemoryDatabase(Guid.NewGuid().ToString()).Options;

            using (var context = new TvMazeContext(options))
            {
                context.AddRange(showList);
                context.SaveChanges();
            }
        }
 public ShowRepository(TvMazeContext context) => _context = context;
Beispiel #6
0
 public TVMazeRepository(TvMazeContext context)
 {
     _context = context;
 }
 public GetShowsListQueryHandler(TvMazeContext context)
 {
     _context = context;
 }
 public AddShowCommandHandler(TvMazeContext context)
 {
     _context = context;
 }
Beispiel #9
0
 public ShowsController(ILogger <ShowsController> logger, TvMazeContext database)
 {
     _logger   = logger;
     _database = database;
 }
 public PersonRepository(TvMazeContext context) => _context = context;