Beispiel #1
0
        public void TestPopulatesTvShowsInDatastore()
        {
            var tvShows = new List <TvMazeTvShow>()
            {
                new TvMazeTvShow()
                {
                    Id = 1, Name = "Name 1"
                },
                new TvMazeTvShow()
                {
                    Id = 2, Name = "Name 2"
                }
            };
            var mockRepo = new Mock <ITvMazeApiRepository>();

            mockRepo.Setup(repo => repo.GetTvShows()).Returns(tvShows);

            var options = BuildContextOptions("TestPopulatesTvShowsInDatastore");

            using (var context = new TvShowContext(options))
            {
                var populator = new DataPopulator(mockRepo.Object, context);
                var result    = populator.PopulateTvShows();

                Assert.True(result.Successful);
                Assert.Equal(2, result.Added);
                Assert.NotEmpty(context.TvShows);

                Assert.Equal(1, context.TvShows.ToList()[0].Id);
                Assert.Equal("Name 1", context.TvShows.ToList()[0].Name);

                Assert.Equal(2, context.TvShows.ToList()[1].Id);
                Assert.Equal("Name 2", context.TvShows.ToList()[1].Name);
            }
        }
Beispiel #2
0
        public void TestUpdatesWhenTvShowAlreadyExistsInTheDatabaseOrAddsOtherwise()
        {
            var tvShows = new List <TvMazeTvShow>()
            {
                new TvMazeTvShow()
                {
                    Id = 1, Name = "Name 1"
                },
                new TvMazeTvShow()
                {
                    Id = 2, Name = "Name 2"
                },
                new TvMazeTvShow()
                {
                    Id = 3, Name = "Name 3"
                }
            };
            var mockRepo = new Mock <ITvMazeApiRepository>();

            mockRepo.Setup(repo => repo.GetTvShows()).Returns(tvShows);

            var options = BuildContextOptions("TestUpdatesWhenTvShowAlreadyExistsInTheDatabaseOrAddsOtherwise");

            using (var context = new TvShowContext(options))
            {
                context.TvShows.AddRange(new List <TvShow>()
                {
                    new TvShow()
                    {
                        Id = 1, Name = "Old Name 1"
                    },
                    new TvShow()
                    {
                        Id = 2, Name = "Old Name 2"
                    }
                });

                context.SaveChanges();
            }

            using (var context = new TvShowContext(options))
            {
                var populator = new DataPopulator(mockRepo.Object, context);
                var result    = populator.PopulateTvShows();

                Assert.True(result.Successful);
                Assert.Equal(1, result.Added);
                Assert.Equal(2, result.Changed);
                Assert.NotEmpty(context.TvShows);

                Assert.Equal(1, context.TvShows.ToList()[0].Id);
                Assert.Equal("Name 1", context.TvShows.ToList()[0].Name);

                Assert.Equal(2, context.TvShows.ToList()[1].Id);
                Assert.Equal("Name 2", context.TvShows.ToList()[1].Name);

                Assert.Equal(3, context.TvShows.ToList()[2].Id);
                Assert.Equal("Name 3", context.TvShows.ToList()[2].Name);
            }
        }
        public async Task EnsureDataIsPopulatedAsync()
        {
            DataPopulator dataPopulator = new DataPopulator();

            await dataPopulator.EnsureDataPopulationAsync();

            Assert.True(dataPopulator.IsPopulated());
        }
        public async Task ReturnCorrectWindowsTimeZonesAsync(string ianaTimeZone, string expectedWindowsTimeZone)
        {
            DataPopulator dataPopulator = new DataPopulator();

            await dataPopulator.EnsureDataPopulationAsync();

            Assert.Equal(dataPopulator.IanaToWindows[ianaTimeZone], expectedWindowsTimeZone);
        }
Beispiel #5
0
        public void SetUp()
        {
            repository = new DataRepository();
            ConstPopulator populator     = new ConstPopulator();
            DataPopulator  dataPopulator = new DataPopulator(repository, populator);

            dataPopulator.populate();
        }
        public void DataPopulatorTest()
        {
            AbstractDataRepository repository    = new DataRepository();
            ConstPopulator         populator     = new ConstPopulator();
            DataPopulator          dataPopulator = new DataPopulator(repository, populator);

            dataPopulator.populate();

            Assert.AreEqual(repository.GetReader(0), new Reader("Dominik", "Karski"));
            Assert.AreEqual(repository.GetReader(1), new Reader("Sebastian", "Kujawski"));
            Assert.AreEqual(repository.GetReader(2), new Reader("Joe", "Biden"));
            Assert.AreEqual(repository.GetReader(3), new Reader("Donald", "Trump"));


            var book = new BookDescription("Metro 2033", "Dmitry Glukhovsky", "Insignis");

            Assert.AreEqual(repository.GetBookDescription(book.Title), book);
            var book1 = new BookDescription("Diuna", "Frank Herbert", "Rebis");

            Assert.AreEqual(repository.GetBookDescription(book1.Title), book1);
            var book2 = new BookDescription("Harry Potter", "J.K.Rowling", "Media Rodzina");

            Assert.AreEqual(repository.GetBookDescription(book2.Title), book2);
            var book3 = new BookDescription("Pan Lodowego Ogrodu (tom 1)", "Jarosław Grzędowicz", "Fabryka Słów");

            Assert.AreEqual(repository.GetBookDescription(book3.Title), book3);

            Assert.AreEqual(repository.GetBookCopy(0), new BookCopy(book, new DateTime(2018, 5, 23), "1234567890123"));
            Assert.AreEqual(repository.GetBookCopy(1), new BookCopy(book, new DateTime(2005, 2, 22), "2234567890123"));
            Assert.AreEqual(repository.GetBookCopy(2), new BookCopy(book1, new DateTime(2012, 2, 1), "3234567890123"));
            Assert.AreEqual(repository.GetBookCopy(3), new BookCopy(book2, new DateTime(1999, 1, 13), "4234567890123"));
            Assert.AreEqual(repository.GetBookCopy(4), new BookCopy(book3, new DateTime(2003, 5, 27), "5234567890123"));

            Assert.AreEqual(repository.GetBookEvent(0),
                            new Rent(new BookCopy(book, new DateTime(2015, 5, 23), "1234567890123"),
                                     new Reader("Joe", "Biden"), new DateTime(2017, 4, 4)));
            Assert.AreEqual(repository.GetBookEvent(1),
                            new Rent(new BookCopy(book3, new DateTime(2003, 5, 27), "5234567890123"),
                                     new Reader("Dominik", "Karski"), new DateTime(2017, 11, 6)));
            Assert.AreEqual(repository.GetBookEvent(2),
                            new Rent(new BookCopy(book1, new DateTime(2012, 2, 1), "3234567890123"),
                                     new Reader("Sebastian", "Kujawski"), new DateTime(2018, 3, 3)));
            Assert.AreEqual(repository.GetBookEvent(3),
                            new Rent(new BookCopy(book, new DateTime(2005, 2, 22), "2234567890123"),
                                     new Reader("Donald", "Trump"), new DateTime(2018, 4, 4)));
            Assert.AreEqual(repository.GetBookEvent(4),
                            new Rent(new BookCopy(book2, new DateTime(1999, 1, 13), "4234567890123"),
                                     new Reader("Joe", "Biden"), new DateTime(2020, 5, 5)));
            Assert.AreEqual(repository.GetBookEvent(5),
                            new Return(new BookCopy(book, new DateTime(2015, 5, 23), "1234567890123"),
                                       new Reader("Joe", "Biden"), new DateTime(2020, 10, 10)));
            Assert.AreEqual(repository.GetBookEvent(6),
                            new Return(new BookCopy(book, new DateTime(2005, 2, 22), "2234567890123"),
                                       new Reader("Donald", "Trump"), new DateTime(2020, 11, 6)));
        }
        public async Task ReturnCorrectIanaTimeZonesAsync(WindowsTimeZoneEntry testInput)
        {
            DataPopulator dataPopulator = new DataPopulator();

            await dataPopulator.EnsureDataPopulationAsync();

            bool containsSameNumberOfIanaTimeZones = dataPopulator.WindowsToIana[testInput.WindowsTimeZoneId].Count() == testInput.IANATimeZones.Count();
            bool containsSameIanaTimeZones         = dataPopulator.WindowsToIana[testInput.WindowsTimeZoneId].All(populatorOutput => testInput.IANATimeZones.Contains(populatorOutput));

            Assert.True(containsSameIanaTimeZones && containsSameIanaTimeZones);
        }
Beispiel #8
0
        public void TestReturnsErrorMessageWhenMazeApiDoesntWork()
        {
            var mockRepo = new Mock <ITvMazeApiRepository>();

            mockRepo.Setup(repo => repo.GetTvShows()).Throws(new TvMazeApiException());

            var options = BuildContextOptions("TestReturnsErrorMessageWhenMazeApiDoesntWork");

            using (var context = new TvShowContext(options))
            {
                var populator = new DataPopulator(mockRepo.Object, context);
                var result    = populator.PopulateTvShows();

                Assert.False(result.Successful);

                Assert.False(result.Error == "");
            }
        }
 private void PopulateData(string id_string)
 {
     allBattles    = DataPopulator.Populate_Data <BattleWrapper>(file, 0xf5, 0x28, memory_offsets[id_string]["Battles"], true);
     allEncounters = DataPopulator.Populate_Data <EncountersWrapper>(file, 0xbf, 4, memory_offsets[id_string]["Encounters"], false);
     allParts      = DataPopulator.Populate_Data <PartWrapper>(file, 480, 0x10, memory_offsets[id_string]["Parts"], false);
 }
 public List <AuthenticationRole> GetRoleForUser(string userName)
 {
     return(DataPopulator.GetRoles());
 }
Beispiel #11
0
 public Form1()
 {
     InitializeComponent();
     _dataPopulator = new DataPopulator();
 }