Пример #1
0
        public async System.Threading.Tasks.Task LoadPatientAsyncWithIndentifier_ShouldReturnPatient_WhenFound()
        {
            //Given
            var openmrsClientMock   = new Mock <IOpenMrsClient>();
            var discoveryDataSource = new FhirDiscoveryDataSource(openmrsClientMock.Object);
            var identifier          = "GAN203007";
            var path = $"{Endpoints.Fhir.OnPatientPath}/?identifier={identifier}";

            openmrsClientMock
            .Setup(x => x.GetAsync(path))
            .ReturnsAsync(new HttpResponseMessage
            {
                StatusCode = HttpStatusCode.OK,
                Content    = new StringContent(BundleSampleWithOnePatientRecord)
            })
            .Verifiable();

            //When
            var patient = await discoveryDataSource.LoadPatientAsyncWithIndentifier(identifier);

            //Then
            Assert.NotNull(patient);
            patient.Name[0].GivenElement.First().ToString().Should().Be("David");
        }