public void Invalid_Header_Provider_FQDN_Invalid() { var requestMock = new Mock <HttpRequest>(); requestMock.Setup(x => x.Method).Returns("GET"); requestMock.Setup(x => x.Path).Returns(new PathString("/nrls-ri/SSP/https%3A%2F%2Ftest888-invalid.domain.com%2Fbinary%2Ffile%2F0001")); requestMock.Setup(x => x.Headers).Returns(new HeaderDictionary() { { HeaderNames.Authorization, "valid-jwt" }, { FhirConstants.HeaderSspFromAsid, "000" }, { FhirConstants.HeaderSspToAsid, "888" }, { FhirConstants.HeaderSspTradeId, "valid-trace" }, { FhirConstants.HeaderSspInterationId, "valid-interaction" } }); var contextMock = new Mock <HttpContext>(); contextMock.Setup(x => x.Request).Returns(requestMock.Object); var sspAProxyGateMiddleware = new SspProxyGateMiddleware(next: (innerHttpContext) => Task.FromResult(0), sdsService: _sdsService, nrlsValidation: _nrlsValidation); //Test will fail if invalid Assert.ThrowsAsync <HttpFhirException>(async delegate { await sspAProxyGateMiddleware.Invoke(contextMock.Object); }); }
public async void Valid_Headers() { var requestMock = new Mock <HttpRequest>(); requestMock.Setup(x => x.Method).Returns("GET"); requestMock.Setup(x => x.Path).Returns(new PathString("/nrls-ri/SSP/https%3A%2F%2Ftest999.domain.com%2Fbinary%2Ffile%2F0001")); requestMock.Setup(x => x.Headers).Returns(new HeaderDictionary() { { HeaderNames.Authorization, "we-are-not-validating-jwt-here" }, { FhirConstants.HeaderSspFromAsid, "000" }, { FhirConstants.HeaderSspToAsid, "999" }, { FhirConstants.HeaderSspInterationId, FhirConstants.ReadInteractionId }, { FhirConstants.HeaderSspTradeId, Guid.NewGuid().ToString() } }); var contextMock = new Mock <HttpContext>(); contextMock.Setup(x => x.Request).Returns(requestMock.Object); var sspAProxyGateMiddleware = new SspProxyGateMiddleware(next: (innerHttpContext) => Task.FromResult(0), sdsService: _sdsService, nrlsValidation: _nrlsValidation); //Test will fail if invalid await sspAProxyGateMiddleware.Invoke(contextMock.Object); }
public void Invalid_Header_InteractionID_Invalid() { var requestMock = new Mock <HttpRequest>(); requestMock.Setup(x => x.Method).Returns("GET"); requestMock.Setup(x => x.Headers).Returns(new HeaderDictionary() { { HeaderNames.Authorization, "valid-jwt" }, { FhirConstants.HeaderSspFromAsid, "000" }, { FhirConstants.HeaderSspToAsid, "999" }, { FhirConstants.HeaderSspTradeId, "valid-trace" }, { FhirConstants.HeaderSspInterationId, "invalid-interaction" } }); var contextMock = new Mock <HttpContext>(); contextMock.Setup(x => x.Request).Returns(requestMock.Object); var sspAProxyGateMiddleware = new SspProxyGateMiddleware(next: (innerHttpContext) => Task.FromResult(0), sdsService: _sdsService, nrlsValidation: _nrlsValidation); //Test will fail if invalid Assert.ThrowsAsync <HttpFhirException>(async delegate { await sspAProxyGateMiddleware.Invoke(contextMock.Object); }); }
public void Invalid_Header_Authorization_Missing() { var requestMock = new Mock <HttpRequest>(); requestMock.Setup(x => x.Method).Returns("GET"); requestMock.Setup(x => x.Headers).Returns(new HeaderDictionary() { }); var contextMock = new Mock <HttpContext>(); contextMock.Setup(x => x.Request).Returns(requestMock.Object); var sspAProxyGateMiddleware = new SspProxyGateMiddleware(next: (innerHttpContext) => Task.FromResult(0), sdsService: _sdsService, nrlsValidation: _nrlsValidation); //Test will fail if invalid Assert.ThrowsAsync <HttpFhirException>(async delegate { await sspAProxyGateMiddleware.Invoke(contextMock.Object); }); }