public CreateBindingResponse CreateBinding(CreateBindingRequest request) { var logUrl = configuration.GetAppSetting(LogUrlKey); Plan plan = GetPlan(request.PlanId); Credentials credentials = databaseBuilder.CreateBinding(request.InstanceId, request.BindingId, plan); return new CreateBindingResponse {Credentials = credentials, LogUrl = logUrl}; }
public CreateBindingResponse CreateBinding(CreateBindingRequest request) { var logUrl = configuration.GetAppSetting(LogUrlKey); Plan plan = GetPlan(request.PlanId); Credentials credentials = databaseBuilder.CreateBinding(request.InstanceId, request.BindingId, plan); return(new CreateBindingResponse { Credentials = credentials, LogUrl = logUrl }); }
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 CallsServiceCreateBindingAfterSettingInstanceIdAndBindingIdOnRequest() { service.CreateBinding(Arg.Any<CreateBindingRequest>()).ReturnsForAnyArgs(new CreateBindingResponse { LogUrl = "http://foo", Credentials = new Credentials() }); var request = new CreateBindingRequest { ServiceId = serviceId.ToString() }; var instanceId = Guid.NewGuid().ToString(); var bindingId = Guid.NewGuid().ToString(); IHttpActionResult result = controller.Bind(instanceId, bindingId, request); Assert.IsType<OkNegotiatedContentResult<CreateBindingResponse>>(result); service.Received().CreateBinding(Arg.Is<CreateBindingRequest>(x => x.BindingId == bindingId && x.InstanceId == instanceId)); }
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); }