public void GetSampleRequests_FromSampleObjects_AndSettingActualRequestTypes() { HelpPageSampleGenerator sampleGenerator = new HelpPageSampleGenerator(); sampleGenerator.ActualHttpMessageTypes.Add( new HelpPageSampleKey( SampleDirection.Request, "values", "options", new[] { "request" } ), typeof(string) ); sampleGenerator.SampleObjects.Add(typeof(string), "sample value"); ApiDescription apiDescription = ApiDescriptionHelpers.GetApiDescription( null, "values", "options", "request" ); IDictionary <MediaTypeHeaderValue, object> samples = sampleGenerator.GetSampleRequests( apiDescription ); Assert.NotEmpty(samples); foreach (var samplePair in samples) { Assert.Contains("sample value", ((TextSample)samplePair.Value).Text); } }
public void GetSampleResponses_FromActionSamples_WhenTheReturnTypeIsHttpResponseMessage() { HelpPageSampleGenerator sampleGenerator = new HelpPageSampleGenerator(); var sample = new TextSample("test"); sampleGenerator.ActionSamples.Add( new HelpPageSampleKey( new MediaTypeHeaderValue("plain/text"), SampleDirection.Response, "Values", "Post", new[] { "value" } ), sample ); ApiDescription apiDescription = ApiDescriptionHelpers.GetApiDescription( null, "Values", "Post", "value" ); IDictionary <MediaTypeHeaderValue, object> samples = sampleGenerator.GetSampleResponses( apiDescription ); Assert.NotEmpty(samples); object result; samples.TryGetValue(new MediaTypeHeaderValue("plain/text"), out result); Assert.Same(sample, result); samples.TryGetValue(new MediaTypeHeaderValue("application/json"), out result); Assert.Null(result); }
public void GetSampleResponses_FromActionSamples_BasedOnMediaTypeAndNames() { HelpPageSampleGenerator sampleGenerator = new HelpPageSampleGenerator(); var sample = new TextSample("test"); sampleGenerator.ActionSamples.Add( new HelpPageSampleKey( new MediaTypeHeaderValue("application/xml"), SampleDirection.Response, "Values", "Get", new[] { "id" } ), sample ); ApiDescription apiDescription = ApiDescriptionHelpers.GetApiDescription( null, "Values", "Get", "id" ); IDictionary <MediaTypeHeaderValue, object> samples = sampleGenerator.GetSampleResponses( apiDescription ); Assert.NotEmpty(samples); object result; samples.TryGetValue(new MediaTypeHeaderValue("application/xml"), out result); Assert.Same(sample, result); samples.TryGetValue(new MediaTypeHeaderValue("application/json"), out result); Assert.NotSame(sample, result); }
public void GetSampleRequests_FromActionSamples_BasedOnMediaTypeAndType() { HelpPageSampleGenerator sampleGenerator = new HelpPageSampleGenerator(); var sample = new TextSample("test"); sampleGenerator.ActionSamples.Add( new HelpPageSampleKey( new MediaTypeHeaderValue("application/json"), typeof(Tuple <int, string>) ), sample ); ApiDescription apiDescription = ApiDescriptionHelpers.GetApiDescription( null, "Values", "Patch", "valuePair" ); IDictionary <MediaTypeHeaderValue, object> samples = sampleGenerator.GetSampleRequests( apiDescription ); Assert.NotEmpty(samples); object result; samples.TryGetValue(new MediaTypeHeaderValue("application/json"), out result); Assert.Same(sample, result); samples.TryGetValue(new MediaTypeHeaderValue("application/xml"), out result); Assert.NotSame(sample, result); }
public void GetSampleRequests_Empty() { HelpPageSampleGenerator sampleGenerator = new HelpPageSampleGenerator(); ApiDescription apiDescription = ApiDescriptionHelpers.GetApiDescription(null, "Values", "Get"); IDictionary <MediaTypeHeaderValue, object> samples = sampleGenerator.GetSampleRequests(apiDescription); Assert.Empty(samples); }
public void GetSampleRequests_FromSampleObjects() { HelpPageSampleGenerator sampleGenerator = new HelpPageSampleGenerator(); sampleGenerator.SampleObjects.Add(typeof(string), "sample value"); ApiDescription apiDescription = ApiDescriptionHelpers.GetApiDescription(null, "Values", "Post", "value"); IDictionary <MediaTypeHeaderValue, object> samples = sampleGenerator.GetSampleRequests(apiDescription); Assert.NotEmpty(samples); foreach (var samplePair in samples) { Assert.Contains("sample value", ((TextSample)samplePair.Value).Text); } }