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)); }
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); }
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); }