Пример #1
0
        public void GivenDescriptorsIsNotNull_WhenConstructAcceptHeaderDescriptors_ThenShouldSucceed()
        {
            AcceptHeader            acceptHeader = AcceptHeaderHelpers.CreateAcceptHeader();
            AcceptHeaderDescriptor  descriptor   = AcceptHeaderDescriptorHelpers.CreateAcceptHeaderDescriptor(acceptHeader, match: true);
            AcceptHeaderDescriptors descriptors  = new AcceptHeaderDescriptors(descriptor);

            Assert.Single(descriptors.Descriptors);
            Assert.Same(descriptor, descriptors.Descriptors.First());
        }
        public void GivenMediaType_WhenCheckIsAcceptable_ShouldSucceed(string descriptorMediaType, string acceptHeaderMediaType, bool isAcceptable)
        {
            (AcceptHeader, AcceptHeaderDescriptor)testData = CreateAcceptHeaderAndDescriptorForMediaType(descriptorMediaType, acceptHeaderMediaType);
            string                 transferSyntax;
            AcceptHeader           acceptHeader = testData.Item1;
            AcceptHeaderDescriptor descriptor   = testData.Item2;

            Assert.Equal(isAcceptable, descriptor.IsAcceptable(acceptHeader, out transferSyntax));
        }
Пример #3
0
        public void GivenAcceptHeaders_WhenNoMatch_ThenShouldReturnFalse()
        {
            AcceptHeader            acceptHeader            = AcceptHeaderHelpers.CreateAcceptHeader();
            AcceptHeaderDescriptor  notMatchDescriptor1     = AcceptHeaderDescriptorHelpers.CreateAcceptHeaderDescriptor(acceptHeader, match: false);
            AcceptHeaderDescriptor  notMatchDescriptor2     = AcceptHeaderDescriptorHelpers.CreateAcceptHeaderDescriptor(acceptHeader, match: false);
            AcceptHeaderDescriptors acceptHeaderDescriptors = new AcceptHeaderDescriptors(notMatchDescriptor1, notMatchDescriptor2);
            AcceptHeaderDescriptor  result;
            string transferSyntax;

            Assert.False(acceptHeaderDescriptors.TryGetMatchedDescriptor(acceptHeader, out result, out transferSyntax));
        }
        public void GivenTransferSyntaxMandatory_WhenCheckIsAcceptable_ShouldSucceed(bool isTransferSyntaxMandatory, string transferSyntaxWhenMissing, string acceptHeaderTransferSyntax, bool isAcceptable, string expectedTransferSyntax)
        {
            (AcceptHeader, AcceptHeaderDescriptor)testData = CreateAcceptHeaderAndDescriptorForTransferSyntaxMandatory(isTransferSyntaxMandatory, transferSyntaxWhenMissing, acceptHeaderTransferSyntax);
            string                 transferSyntax;
            AcceptHeader           acceptHeader = testData.Item1;
            AcceptHeaderDescriptor descriptor   = testData.Item2;

            Assert.Equal(isAcceptable, descriptor.IsAcceptable(acceptHeader, out transferSyntax));
            if (isAcceptable)
            {
                Assert.Equal(expectedTransferSyntax, transferSyntax);
            }
        }
        private (AcceptHeader, AcceptHeaderDescriptor) CreateAcceptHeaderAndDescriptorForPayloadType(PayloadTypes descriptorPayloadType, PayloadTypes acceptHeaderPayloadType)
        {
            AcceptHeader           acceptHeader = AcceptHeaderHelpers.CreateAcceptHeader(payloadType: acceptHeaderPayloadType);
            AcceptHeaderDescriptor descriptor   = new AcceptHeaderDescriptor(
                payloadType: descriptorPayloadType,
                mediaType: acceptHeader.MediaType.Value,
                isTransferSyntaxMandatory: true,
                transferSyntaxWhenMissing: string.Empty,
                acceptableTransferSyntaxes: new HashSet <string>()
            {
                acceptHeader.TransferSyntax.Value
            });

            return(acceptHeader, descriptor);
        }
        private (AcceptHeader, AcceptHeaderDescriptor) CreateAcceptHeaderAndDescriptorForTransferSyntaxMandatory(bool isTransferSyntaxMandatory, string transferSyntaxWhenMissing, string acceptHeaderTransferSyntax)
        {
            AcceptHeader           acceptHeader = AcceptHeaderHelpers.CreateAcceptHeader(transferSyntax: acceptHeaderTransferSyntax);
            AcceptHeaderDescriptor descriptor   = new AcceptHeaderDescriptor(
                payloadType: acceptHeader.PayloadType,
                mediaType: acceptHeader.MediaType.Value,
                isTransferSyntaxMandatory: isTransferSyntaxMandatory,
                transferSyntaxWhenMissing: transferSyntaxWhenMissing,
                acceptableTransferSyntaxes: new HashSet <string>()
            {
                acceptHeader.TransferSyntax.Value
            });

            return(acceptHeader, descriptor);
        }
        public void GivenValidInputs_WhenContructAcceptHeaderDescriptor_ShouldSucceed()
        {
            PayloadTypes  payloadType = PayloadTypes.MultipartRelated;
            string        mediaType   = KnownContentTypes.ApplicationDicom;
            bool          isTransferSyntaxMandatory  = false;
            string        transferSyntaxWhenMissing  = DicomTransferSyntaxUids.ExplicitVRLittleEndian;
            ISet <string> acceptableTransferSyntaxes = new HashSet <string>()
            {
                transferSyntaxWhenMissing
            };
            AcceptHeaderDescriptor descriptor = new AcceptHeaderDescriptor(payloadType, mediaType, isTransferSyntaxMandatory, transferSyntaxWhenMissing, acceptableTransferSyntaxes);

            Assert.Equal(payloadType, descriptor.PayloadType);
            Assert.Equal(mediaType, descriptor.MediaType);
            Assert.Equal(isTransferSyntaxMandatory, descriptor.IsTransferSyntaxMandatory);
            Assert.Equal(transferSyntaxWhenMissing, descriptor.TransferSyntaxWhenMissing);
            Assert.Equal(acceptableTransferSyntaxes, descriptor.AcceptableTransferSyntaxes);
        }
Пример #8
0
        public void GivenAcceptHeaders_WhenSeveralMatchAndOthersNot_ThenShouldReturnFirstMatched()
        {
            AcceptHeader            acceptHeader            = AcceptHeaderHelpers.CreateAcceptHeader();
            AcceptHeaderDescriptor  matchDescriptor1        = AcceptHeaderDescriptorHelpers.CreateAcceptHeaderDescriptor(acceptHeader, match: true);
            AcceptHeaderDescriptor  matchDescriptor2        = AcceptHeaderDescriptorHelpers.CreateAcceptHeaderDescriptor(acceptHeader, match: true);
            AcceptHeaderDescriptor  notMatchDescriptor      = AcceptHeaderDescriptorHelpers.CreateAcceptHeaderDescriptor(acceptHeader, match: false);
            AcceptHeaderDescriptors acceptHeaderDescriptors = new AcceptHeaderDescriptors(matchDescriptor1, matchDescriptor2, notMatchDescriptor);
            AcceptHeaderDescriptor  result;
            string transferSyntax;

            Assert.True(acceptHeaderDescriptors.TryGetMatchedDescriptor(acceptHeader, out result, out transferSyntax));
            Assert.Same(result, matchDescriptor1);

            // Actual transferSyntax should be from matchDescriptor1
            string expectedTransferSyntax;

            matchDescriptor1.IsAcceptable(acceptHeader, out expectedTransferSyntax);
            Assert.Equal(transferSyntax, expectedTransferSyntax);
        }