public void GivenARequestWithNoAcceptHeader_WhenValidatingTheContentTypeAgainstSingleAndMultipartHeaderFilter_ThenNotAcceptableStatusCodeShouldBeReturned()
        {
            _filter = CreateFilter(new[] { KnownContentTypes.ApplicationDicomJson, "application/dicom+xml" }, true, true);

            _filter.OnActionExecuting(_context);

            Assert.Equal((int)HttpStatusCode.NotAcceptable, (_context.Result as StatusCodeResult)?.StatusCode);
        }
        public void GivenARequestWithAValidAcceptHeader_WhenValidatingTheContentTypeAgainstSingleHeaderFilter_ThenCorrectStatusCodeShouldBeReturned(string acceptHeaderMediaType, int?expectedStatusCode)
        {
            _filter = CreateFilter(new[] { KnownContentTypes.ApplicationDicomJson, "application/dicom+xml" }, true, false);

            _context.HttpContext.Request.Headers.Add("Accept", acceptHeaderMediaType);

            _filter.OnActionExecuting(_context);

            Assert.Equal(expectedStatusCode, (_context.Result as StatusCodeResult)?.StatusCode);
        }
        public void GivenARequestWithMultipleAcceptHeaders_WhenValidatingTheContentTypeAgainstMultipartHeaderFilter_ThenCorrectStatusCodeShouldBeReturned(int?expectedStatusCode, params string[] acceptHeaderMediaType)
        {
            _filter = CreateFilter(new[] { KnownContentTypes.ApplicationDicom, KnownContentTypes.ApplicationOctetStream }, false, true);

            _context.HttpContext.Request.Headers.Add("Accept", acceptHeaderMediaType);

            _filter.OnActionExecuting(_context);

            Assert.Equal(expectedStatusCode, (_context.Result as StatusCodeResult)?.StatusCode);
        }