private static async Task <FhirTypedElementToSearchValueConverterManager> CreateFhirTypedElementToSearchValueConverterManagerAsync() { var types = typeof(ITypedElementToSearchValueConverter) .Assembly .GetTypes() .Where(x => typeof(ITypedElementToSearchValueConverter).IsAssignableFrom(x) && !x.IsAbstract && !x.IsInterface); var referenceSearchValueParser = new ReferenceSearchValueParser(new FhirRequestContextAccessor()); var codeSystemResolver = new CodeSystemResolver(ModelInfoProvider.Instance); await codeSystemResolver.StartAsync(CancellationToken.None); var fhirElementToSearchValueConverters = new List <ITypedElementToSearchValueConverter>(); foreach (Type type in types) { // Filter out the extension converter because it will be added to the converter dictionary in the converter manager's constructor if (type.Name != nameof(FhirTypedElementToSearchValueConverterManager.ExtensionConverter)) { var x = (ITypedElementToSearchValueConverter)Mock.TypeWithArguments(type, referenceSearchValueParser, codeSystemResolver); fhirElementToSearchValueConverters.Add(x); } } return(new FhirTypedElementToSearchValueConverterManager(fhirElementToSearchValueConverters)); }
public LightweightReferenceToElementResolverTests() { ReferenceSearchValueParser referenceSearchValueParser = Mock.TypeWithArguments <ReferenceSearchValueParser>(); _resolver = new LightweightReferenceToElementResolver(referenceSearchValueParser, ModelInfoProvider.Instance); _encounter = Samples.GetJsonSample <Encounter>("Encounter-For-Patient-f001"); _context = new FhirEvaluationContext { ElementResolver = _resolver.Resolve, }; FhirPathCompiler.DefaultSymbolTable.AddFhirExtensions(); }
private static async Task <FhirTypedElementToSearchValueConverterManager> CreateFhirTypedElementToSearchValueConverterManagerAsync() { var types = typeof(ITypedElementToSearchValueConverter) .Assembly .GetTypes() .Where(x => typeof(ITypedElementToSearchValueConverter).IsAssignableFrom(x) && !x.IsAbstract && !x.IsInterface); var referenceSearchValueParser = new ReferenceSearchValueParser(new FhirRequestContextAccessor()); var codeSystemResolver = new CodeSystemResolver(ModelInfoProvider.Instance); await codeSystemResolver.StartAsync(CancellationToken.None); var fhirElementToSearchValueConverters = types.Select(x => (ITypedElementToSearchValueConverter)Mock.TypeWithArguments(x, referenceSearchValueParser, codeSystemResolver)); return(new FhirTypedElementToSearchValueConverterManager(fhirElementToSearchValueConverters)); }
public static FhirNodeToSearchValueTypeConverterManager CreateFhirElementToSearchValueTypeConverterManager() { var types = typeof(IFhirNodeToSearchValueTypeConverter) .Assembly .GetTypes() .Where(x => typeof(IFhirNodeToSearchValueTypeConverter).IsAssignableFrom(x) && !x.IsAbstract && !x.IsInterface); var referenceSearchValueParser = new ReferenceSearchValueParser(new FhirRequestContextAccessor()); var codeSystemResolver = new CodeSystemResolver(ModelInfoProvider.Instance); codeSystemResolver.Start(); var fhirNodeToSearchValueTypeConverters = types.Select(x => (IFhirNodeToSearchValueTypeConverter)Mock.TypeWithArguments(x, referenceSearchValueParser, codeSystemResolver)); return(new FhirNodeToSearchValueTypeConverterManager(fhirNodeToSearchValueTypeConverters)); }
public ReferenceSearchValueParserTests() { _fhirRequestContextAccessor.FhirRequestContext.BaseUri.Returns(BaseUri); _referenceSearchValueParser = new ReferenceSearchValueParser(_fhirRequestContextAccessor); }