public async Task <HttpResponseMessage> PostHealthCheck([FromBody] HealthCheck hcm) { // Check required parameters. if (hcm.Equals(HealthCheck.Default)) { return(this.Request.CreateResponse(HttpStatusCode.BadRequest)); } if (null == this._operations) { return(this.Request.CreateResponse(HttpStatusCode.InternalServerError)); } try { ServiceEventSource.Current.ServiceRequestStart(nameof(this.PostHealthCheck)); // Call the operations class to add the health check. await this._operations.AddHealthCheckAsync(hcm); ServiceEventSource.Current.ServiceRequestStop(nameof(this.PostHealthCheck)); return(this.Request.CreateResponse(HttpStatusCode.OK)); } catch (ArgumentException ex) { ServiceEventSource.Current.Exception(ex.Message, ex.GetType().Name, nameof(this.PostHealthCheck)); return(this.Request.CreateResponse(HttpStatusCode.BadRequest)); } catch (Exception ex) { ServiceEventSource.Current.Exception(ex.Message, ex.GetType().Name, nameof(this.PostHealthCheck)); return(this.Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex)); } }
public void HealthCheck_ConstructorTest() { HealthCheck hcDefault = new HealthCheck(); Assert.IsNull(hcDefault.ServiceName); Assert.IsNull(hcDefault.SuffixPath); Assert.IsNull(hcDefault.Content); Assert.IsNull(hcDefault.MediaType); Assert.IsNull(hcDefault.Headers); Assert.IsNull(hcDefault.WarningStatusCodes); Assert.IsNull(hcDefault.ErrorStatusCodes); Assert.AreEqual(default(Guid), hcDefault.Partition); Assert.AreEqual(default(TimeSpan), hcDefault.Frequency); Assert.AreEqual(default(HttpMethod), hcDefault.Method); Assert.AreEqual(default(TimeSpan), hcDefault.ExpectedDuration); Assert.AreEqual(default(TimeSpan), hcDefault.MaximumDuration); Assert.AreEqual(default(DateTimeOffset), hcDefault.LastAttempt); Assert.AreEqual(default(long), hcDefault.FailureCount); Assert.AreEqual(default(long), hcDefault.Duration); Assert.AreEqual(default(HttpStatusCode), hcDefault.ResultCode); // Check this equals the default HealthCheck value. Assert.IsTrue(hcDefault.Equals(HealthCheck.Default)); // Check the copy constructor. HealthCheck hc1 = new HealthCheck(hc); Assert.IsTrue(hc.Equals(hc1)); }