Exemplo n.º 1
0
        public Catalog(IDatabaseBuilder databaseBuild)
        {
            Services = new Dictionary<string, ICloudFoundryService>();

            var sqlService = new MsSqlCloudFoundryService(new AppConfiguration(), databaseBuild);
            Services.Add(sqlService.Id, sqlService);
        }
Exemplo n.º 2
0
        public Catalog(IDatabaseBuilder databaseBuild)
        {
            Services = new Dictionary <string, ICloudFoundryService>();

            var sqlService = new MsSqlCloudFoundryService(new AppConfiguration(), databaseBuild);

            Services.Add(sqlService.Id, sqlService);
        }
            public void ThrowsArgumentExceptionWhenPlanIdDoesNotExist()
            {
                var configuration = Substitute.For<IConfiguration>();
                var databaseBuilder = Substitute.For<IDatabaseBuilder>();
                configuration.GetAppSetting(Arg.Any<string>()).Returns("logurl");
                var service = new MsSqlCloudFoundryService(configuration, databaseBuilder);
                var request = new CreateBindingRequest { PlanId = Guid.NewGuid().ToString(), InstanceId = Guid.NewGuid().ToString(), BindingId = Guid.NewGuid().ToString() };

                var ex = Assert.Throws<ArgumentException>(() => service.CreateBinding(request));

                Assert.Equal(string.Format("The plan id {0} does not exists", request.PlanId), ex.Message);
            }
            public void CallsDatabaseBuilderWithCorrectPlan()
            {
                var configuration = Substitute.For<IConfiguration>();
                var databaseBuilder = Substitute.For<IDatabaseBuilder>();
                configuration.GetAppSetting(Arg.Any<string>()).Returns("logurl");
                var service = new MsSqlCloudFoundryService(configuration, databaseBuilder);
                var request = new CreateBindingRequest { PlanId = MsSqlService.FreePlanId.ToString(), InstanceId = Guid.NewGuid().ToString(), BindingId = Guid.NewGuid().ToString() };

                service.CreateBinding(request);

                databaseBuilder.Received().CreateBinding(Arg.Is<string>(x => x == request.InstanceId), Arg.Is<string>(x => x == request.BindingId), Arg.Is<Plan>(x => x.Id == request.PlanId));
            }
            public void ReturnsCredentialsForNewBinding()
            {
                var configuration = Substitute.For<IConfiguration>();
                var databaseBuilder = Substitute.For<IDatabaseBuilder>();
                databaseBuilder.CreateBinding(Arg.Any<string>(), Arg.Any<string>(), Arg.Any<Plan>()).ReturnsForAnyArgs(new Credentials());
                configuration.GetAppSetting(Arg.Any<string>()).Returns("logurl");
                var service = new MsSqlCloudFoundryService(configuration, databaseBuilder);
                var request = new CreateBindingRequest { PlanId = MsSqlService.FreePlanId.ToString(), InstanceId = Guid.NewGuid().ToString(), BindingId = Guid.NewGuid().ToString() };

                CreateBindingResponse response = service.CreateBinding(request);

                Assert.NotNull(response.Credentials);
            }
            public void CallsDatabaseBuilderToDropDatabase()
            {
                var configuration = Substitute.For<IConfiguration>();
                var databaseBuilder = Substitute.For<IDatabaseBuilder>();
                var service = new MsSqlCloudFoundryService(configuration, databaseBuilder);
                var request = new DeprovisionRequest { InstanceId = Guid.NewGuid().ToString() };

                service.Deprovision(request);

                databaseBuilder.Received().DropDatabase(Arg.Is<string>(x => x == request.InstanceId));
            }
            public void CallsDatabaseBuilderWithCorrectArguments()
            {
                var configuration = Substitute.For<IConfiguration>();
                var databaseBuilder = Substitute.For<IDatabaseBuilder>();
                var service = new MsSqlCloudFoundryService(configuration, databaseBuilder);
                var request = new RemoveBindingRequest { InstanceId = Guid.NewGuid().ToString(), BindingId = Guid.NewGuid().ToString() };

                service.RemoveBinding(request);

                databaseBuilder.Received().RemoveBinding(Arg.Is<string>(x => x == request.InstanceId), Arg.Is<string>(x => x == request.BindingId));
            }
            public void ReturnsCorrectUrlForDashboard()
            {
                var configuration = Substitute.For<IConfiguration>();
                var databaseBuilder = Substitute.For<IDatabaseBuilder>();
                configuration.GetAppSetting(Arg.Any<string>()).Returns("dashboard");
                var service = new MsSqlCloudFoundryService(configuration, databaseBuilder);
                var request = new ProvisionRequest { PlanId = MsSqlService.FreePlanId.ToString(), InstanceId = Guid.NewGuid().ToString() };

                ProvisionResponse response = service.Provision(request);

                Assert.Equal("dashboard", response.Url);
            }