コード例 #1
0
        private void PrintMongoVersion(MongoContainer mongo)
        {
            var mongoClient        = new MongoClient(mongo.GetConnectionString());
            var clusterDescription = mongoClient.Cluster.Description;

            _testOutput.WriteLine($"Mongo version: {clusterDescription.Servers.First().Version}");
        }
コード例 #2
0
        public async Task RunBeforeAnyTests()
        {
            TestContext.Progress.WriteLine(isTestingEnv);

            _config = new ConfigurationBuilder()
                      .AddJsonFile("appsettings.json")
                      .AddJsonFile("appsettings.Integration.json")
                      .Build();

            if (!bool.TryParse(isTestingEnv, out var result) || !result)
            {
                UpdateConfig("mongodb://127.0.0.1:27017");
                _dockerClient = new DockerClientConfiguration(
                    // TODO: This needs to be configurable in order to execute tests in CI
                    new Uri("npipe://./pipe/docker_engine"))
                                .CreateClient();

                DockerContainerBase.CleanupOrphanedContainers(_dockerClient).Wait(30000);

                _mongoContainer = new MongoContainer();
                await _mongoContainer.Start(_dockerClient);
            }
            else
            {
                UpdateConfig("mongodb://127.0.0.1:27018");
            }

            _factory = new IntegrationTestsApplicationFactory <TestStartup>();

            Client = _factory.CreateClient();
        }
コード例 #3
0
        protected override async Task OnInitialized(MongoContainer mongoContainer)
        {
            await base.OnInitialized(mongoContainer);

            var client = new MongoClient(mongoContainer.GetConnectionString());
            await client.GetDatabase("Forecast").GetCollection <WeatherForecast>("WeatherForecast").InsertManyAsync(new[]
            {
                new WeatherForecast {
                    Date = DateTime.Today.ToUniversalTime(), Summary = "Good weather", TemperatureC = 7
                },
                new WeatherForecast {
                    Date = DateTime.Today.AddDays(-1).ToUniversalTime(), Summary = "Usual weather", TemperatureC = 3
                },
                new WeatherForecast {
                    Date = DateTime.Today.AddDays(-2).ToUniversalTime(), Summary = "Bad weather", TemperatureC = 0
                }
            });
        }
コード例 #4
0
 protected virtual Task OnInitialized(MongoContainer mongoContainer) => Task.CompletedTask;