예제 #1
0
        public async Task GetPlanetByName()
        {
            // Arrange
            var service = this.CreateService();
            var options = new DbContextOptionsBuilder <PlanetDbContext>()
                          .UseInMemoryDatabase(databaseName: "GetPlanetByName_DbTest")
                          .Options;

            using (var context = new PlanetDbContext(options))
            {
                var  dataAccess = new PlanetDataAccess(context);
                Guid guid       = Guid.NewGuid();

                context.Add(new Planet()
                {
                    Id              = guid,
                    Name            = "Mercury",
                    ImageUrl        = "https://cdn.mos.cms.futurecdn.net/MTEiJvP99DScN3vkAsE9LA-320-80.jpg",
                    DistanceFromSun = 57900000,
                    Mass            = "3.301×1023 kg",
                    Diameter        = 4879,
                });

                await context.SaveChangesAsync();

                Planet planet = await dataAccess.GetPlanetByName("Mercury");

                // Assert
                Assert.Equal("Mercury", planet.Name);
                Assert.Equal(57900000, planet.DistanceFromSun);
                Assert.Equal(4879, planet.Diameter);
            }
        }
예제 #2
0
    public static void Initialize(IServiceProvider serviceProvider)
    {
        using (var context = new PlanetDbContext(
                   serviceProvider.GetRequiredService <DbContextOptions <PlanetDbContext> >()))
        {
            if (context.Planets.Any())
            {
                return;
            }

            context.Planets.AddRange(
                new Planet
            {
                Id              = Guid.NewGuid(),
                Name            = "Mercury",
                ImageUrl        = "https://cdn.mos.cms.futurecdn.net/MTEiJvP99DScN3vkAsE9LA-320-80.jpg",
                DistanceFromSun = 57900000,
                Mass            = "3.301×1023 kg	",
                Diameter        = 4879,
            },
                new Planet
            {
                Id              = Guid.NewGuid(),
                Name            = "Venus",
                ImageUrl        = "https://cdn.mos.cms.futurecdn.net/kaPwBjHiUKax8syodHNPmF-320-80.jpg",
                DistanceFromSun = 108160000,
                Mass            = "4.867×1024 kg",
                Diameter        = 12104,
            },
                new Planet
            {
                Id              = Guid.NewGuid(),
                Name            = "Earth",
                ImageUrl        = "https://thumbor.forbes.com/thumbor/960x0/https%3A%2F%2Fblogs-images.forbes.com%2Fstartswithabang%2Ffiles%2F2016%2F11%2F999px-Nasa_blue_marble.jpg",
                DistanceFromSun = 149600000,
                Mass            = "5.972×1024 kg",
                Diameter        = 12742,
            },
                new Planet
            {
                Id              = Guid.NewGuid(),
                Name            = "Mars",
                ImageUrl        = "https://space-facts.com/wp-content/uploads/mars.jpg",
                DistanceFromSun = 227936640,
                Mass            = "6.417×1023 kg",
                Diameter        = 6779,
            },
                new Planet
            {
                Id              = Guid.NewGuid(),
                Name            = "Jupiter",
                ImageUrl        = "https://upload.wikimedia.org/wikipedia/commons/4/4e/Jupiter%27s_swirling_colourful_clouds.jpg",
                DistanceFromSun = 778369000,
                Mass            = "1.899×1027 kg",
                Diameter        = 139820,
            },
                new Planet
            {
                Id              = Guid.NewGuid(),
                Name            = "Saturn",
                ImageUrl        = "https://cdn.hswstatic.com/gif/saturn-lead-image.jpg",
                DistanceFromSun = 1427034000,
                Mass            = "5.685×1026 kg",
                Diameter        = 116460,
            },
                new Planet
            {
                Id              = Guid.NewGuid(),
                Name            = "Uranus",
                ImageUrl        = "https://upload.wikimedia.org/wikipedia/commons/thumb/3/3d/Uranus2.jpg/1200px-Uranus2.jpg",
                DistanceFromSun = 2870658186,
                Mass            = "8.682×1025 kg",
                Diameter        = 50724,
            },
                new Planet
            {
                Id              = Guid.NewGuid(),
                Name            = "Neptune",
                ImageUrl        = "https://solarsystem.nasa.gov/system/feature_items/images/82_carousel_neptune_1.jpg",
                DistanceFromSun = 4496976000,
                Mass            = "1.024×1026 kg",
                Diameter        = 49244,
            });

            context.SaveChanges();
        }
    }